// Copyright (c) rAthena Dev Teams - Licensed under GNU GPL
// For more information, see LICENCE in the main folder

#ifndef ITEMDB_HPP
#define ITEMDB_HPP

#include <map>
#include <string>
#include <vector>

#include <common/database.hpp>
#include <common/db.hpp>
#include <common/malloc.hpp>
#include <common/mmo.hpp> // ITEM_NAME_LENGTH

#include "script.hpp"
#include "status.hpp"

enum e_ammo_type : uint8;

///Use apple for unknown items.
const t_itemid UNKNOWN_ITEM_ID = 512;
/// The maximum number of item delays
#define MAX_ITEMDELAYS	10
///Designed for search functions, species max number of matches to display.
#ifndef MAX_SEARCH
#define MAX_SEARCH	10
#endif

#define MAX_ROULETTE_LEVEL 7 /** client-defined value **/
#define MAX_ROULETTE_COLUMNS 9 /** client-defined value **/

const t_itemid CARD0_FORGE = 0x00FF;
const t_itemid CARD0_CREATE = 0x00FE;
const t_itemid CARD0_PET = 0x0100;

///Marks if the card0 given is "special" (non-item id used to mark pets/created items. [Skotlex]
#define itemdb_isspecial(i) (i == CARD0_FORGE || i == CARD0_CREATE || i == CARD0_PET)

///Enum of item id (for hardcoded purpose)
enum item_itemid : t_itemid
{
	ITEMID_DUMMY						= 499,
	ITEMID_RED_POTION					= 501,
	ITEMID_YELLOW_POTION				= 503,
	ITEMID_WHITE_POTION					= 504,
	ITEMID_BLUE_POTION					= 505,
	ITEMID_APPLE						= 512,
	ITEMID_HOLY_WATER					= 523,
	ITEMID_PUMPKIN						= 535,
	ITEMID_PET_FOOD						= 537,
	ITEMID_RED_SLIM_POTION				= 545,
	ITEMID_YELLOW_SLIM_POTION			= 546,
	ITEMID_WHITE_SLIM_POTION			= 547,
	ITEMID_ANODYNE						= 605,
	ITEMID_ALOEBERA						= 606,
	ITEMID_MAGNIFIER					= 611,
	ITEMID_POISON_BOTTLE				= 678,
	ITEMID_EMPTY_BOTTLE					= 713,
	ITEMID_EMPERIUM						= 714,
	ITEMID_RED_GEMSTONE					= 716,
	ITEMID_BLUE_GEMSTONE				= 717,
	ITEMID_ORIDECON_STONE				= 756,
	ITEMID_ALCOHOL						= 970,
	ITEMID_ORIDECON						= 984,
	ITEMID_ANVIL						= 986,
	ITEMID_ORIDECON_ANVIL				= 987,
	ITEMID_GOLDEN_ANVIL					= 988,
	ITEMID_EMPERIUM_ANVIL				= 989,
	ITEMID_BLOODY_RED					= 990,
	ITEMID_CRYSTAL_BLUE					= 991,
	ITEMID_WIND_OF_VERDURE				= 992,
	ITEMID_YELLOW_LIVE					= 993,
	ITEMID_FLAME_HEART					= 994,
	ITEMID_MISTIC_FROZEN				= 995,
	ITEMID_ROUGH_WIND					= 996,
	ITEMID_GREAT_NATURE					= 997,
	ITEMID_IRON							= 998,
	ITEMID_STEEL						= 999,
	ITEMID_STAR_CRUMB					= 1000,
	ITEMID_IRON_ORE						= 1002,
	ITEMID_PHRACON						= 1010,
	ITEMID_EMVERETARCON					= 1011,
	ITEMID_TRAP							= 1065,
	ITEMID_PAINT_BRUSH					= 6122,
	ITEMID_MAGIC_GEAR_FUEL				= 6146,
	ITEMID_NEW_INSURANCE				= 6413,
	ITEMID_STRANGE_EMBRYO				= 6415,
	ITEMID_BLACKSMITH_BLESSING			= 6635,
	ITEMID_STONE						= 7049,
	ITEMID_FIRE_BOTTLE					= 7135,
	ITEMID_ACID_BOTTLE					= 7136,
	ITEMID_MAN_EATER_BOTTLE				= 7137,
	ITEMID_MINI_BOTTLE					= 7138,
	ITEMID_COATING_BOTTLE				= 7139,
	ITEMID_FRAGMENT_OF_CRYSTAL			= 7321,
	ITEMID_SKULL_						= 7420,
	ITEMID_TRAP_ALLOY					= 7940,
	ITEMID_COOKIE_BAT					= 11605,
	ITEMID_MERCENARY_RED_POTION			= 12184,
	ITEMID_MERCENARY_BLUE_POTION		= 12185,
	ITEMID_NEURALIZER					= 12213,
	ITEMID_M_CENTER_POTION				= 12241,
	ITEMID_M_AWAKENING_POTION			= 12242,
	ITEMID_M_BERSERK_POTION				= 12243,
	ITEMID_NOVICE_MAGNIFIER				= 12325,
	ITEMID_ANCILLA						= 12333,
	ITEMID_REINS_OF_MOUNT				= 12622,
	ITEMID_NOBLE_NAMEPLATE				= 12705,
	ITEMID_SILVER_BULLET				= 13201,
	ITEMID_PURIFICATION_BULLET			= 13220,
	ITEMID_SILVER_BULLET_				= 13221,
	ITEMID_INVENTORY_EX_EVT				= 25791,
	ITEMID_INVENTORY_EX_DIS				= 25792,
	ITEMID_INVENTORY_EX					= 25793,
	ITEMID_WL_MB_SG						= 100065,
	ITEMID_HOMUNCULUS_SUPPLEMENT		= 100371,
};

///Rune Knight
enum rune_item_list : t_itemid
{
	ITEMID_NAUTHIZ		= 12725,
	ITEMID_RAIDO,
	ITEMID_BERKANA,
	ITEMID_ISA,
	ITEMID_OTHILA,
	ITEMID_URUZ,
	ITEMID_THURISAZ,
	ITEMID_WYRD,
	ITEMID_HAGALAZ,
	ITEMID_LUX_ANIMA	= 22540,
};

///Mechanic
enum mechanic_item_list : t_itemid
{
	ITEMID_ACCELERATOR				= 2800,
	ITEMID_SUICIDAL_DEVICE				= 2802,
	ITEMID_SHAPE_SHIFTER,
	ITEMID_COOLING_DEVICE,
	ITEMID_MAGNETIC_FIELD_GENERATOR,
	ITEMID_BARRIER_BUILDER,
	ITEMID_REPAIR_KIT,
	ITEMID_CAMOUFLAGE_GENERATOR,
	ITEMID_HIGH_QUALITY_COOLER,
	ITEMID_SPECIAL_COOLER,
	ITEMID_SCARLET_PTS				= 6360,
	ITEMID_INDIGO_PTS,
	ITEMID_YELLOW_WISH_PTS,
	ITEMID_LIME_GREEN_PTS,
	ITEMID_REPAIR_A              = 12392,
	ITEMID_REPAIR_B,
	ITEMID_REPAIR_C,
};

///Genetic
enum genetic_item_list : t_itemid
{
	ITEMID_SEED_OF_HORNY_PLANT			= 6210,
	ITEMID_BLOODSUCK_PLANT_SEED,
	ITEMID_BOMB_MUSHROOM_SPORE,
	ITEMID_HP_INCREASE_POTION_SMALL		= 12422,
	ITEMID_HP_INCREASE_POTION_MEDIUM,
	ITEMID_HP_INCREASE_POTION_LARGE,
	ITEMID_SP_INCREASE_POTION_SMALL,
	ITEMID_SP_INCREASE_POTION_MEDIUM,
	ITEMID_SP_INCREASE_POTION_LARGE,
	ITEMID_CONCENTRATED_WHITE_POTION_Z,
	ITEMID_SAVAGE_FULL_ROAST,
	ITEMID_COCKTAIL_WARG_BLOOD,
	ITEMID_MINOR_STEW,
	ITEMID_SIROMA_ICED_TEA,
	ITEMID_DROSERA_HERB_SALAD,
	ITEMID_PETITE_TAIL_NOODLES,
	ITEMID_BLACK_MASS,
	ITEMID_VITATA500,
	ITEMID_CONCENTRATED_CEROMAIN_SOUP,
	ITEMID_CURE_FREE					= 12475,
	ITEMID_APPLE_BOMB					= 13260,
	ITEMID_COCONUT_BOMB,
	ITEMID_MELON_BOMB,
	ITEMID_PINEAPPLE_BOMB,
	ITEMID_BANANA_BOMB,
	ITEMID_BLACK_LUMP,
	ITEMID_BLACK_HARD_LUMP,
	ITEMID_VERY_HARD_LUMP,
	ITEMID_MYSTERIOUS_POWDER,
	ITEMID_HP_INC_POTS_TO_THROW			= 13275,
	ITEMID_HP_INC_POTM_TO_THROW,
	ITEMID_HP_INC_POTL_TO_THROW,
	ITEMID_SP_INC_POTS_TO_THROW,
	ITEMID_SP_INC_POTM_TO_THROW,
	ITEMID_SP_INC_POTL_TO_THROW,
};

///Guillotine Cross
enum poison_item_list : t_itemid
{
	ITEMID_PARALYSE = 12717,
	ITEMID_LEECHESEND,
	ITEMID_OBLIVIONCURSE,
	ITEMID_DEATHHURT,
	ITEMID_TOXIN,
	ITEMID_PYREXIA,
	ITEMID_MAGICMUSHROOM,
	ITEMID_VENOMBLEED,
};

///Item job
enum e_item_job : uint16
{
	ITEMJ_NONE        = 0x00,
	ITEMJ_NORMAL      = 0x01,
	ITEMJ_UPPER       = 0x02,
	ITEMJ_BABY        = 0x04,
	ITEMJ_THIRD       = 0x08,
	ITEMJ_THIRD_UPPER = 0x10,
	ITEMJ_THIRD_BABY  = 0x20,
	ITEMJ_FOURTH      = 0x40,
	ITEMJ_MAX         = 0xFF,

	ITEMJ_ALL_UPPER = ITEMJ_UPPER | ITEMJ_THIRD_UPPER | ITEMJ_FOURTH,
	ITEMJ_ALL_BABY = ITEMJ_BABY | ITEMJ_THIRD_BABY,
	ITEMJ_ALL_THIRD = ITEMJ_THIRD | ITEMJ_THIRD_UPPER | ITEMJ_THIRD_BABY,

#ifdef RENEWAL
	ITEMJ_ALL = ITEMJ_NORMAL | ITEMJ_UPPER | ITEMJ_BABY | ITEMJ_THIRD | ITEMJ_THIRD_UPPER | ITEMJ_THIRD_BABY | ITEMJ_FOURTH,
#else
	ITEMJ_ALL = ITEMJ_NORMAL | ITEMJ_UPPER | ITEMJ_BABY,
#endif
};

#define AMMO_TYPE_ALL ((1<<MAX_AMMO_TYPE)-1)

enum e_random_item_group {
	IG_BLUEBOX = 1,
	IG_VIOLETBOX,
	IG_CARDALBUM,
	IG_GIFTBOX,
	IG_SCROLLBOX,
	IG_COOKIEBAG,
	IG_FIRSTAID,
	IG_HERB,
	IG_FRUIT,
	IG_MEAT,
	IG_CANDY,
	IG_JUICE,
	IG_FISH,
	IG_BOX,
	IG_GEMSTONE,
	IG_RESIST,
	IG_ORE,
	IG_FOOD,
	IG_RECOVERY,
	IG_MINERAL,
	IG_TAMING,
	IG_SCROLL,
	IG_QUIVER,
	IG_MASK,
	IG_ACCESORY,
	IG_JEWEL,
	IG_GIFTBOX_1,
	IG_GIFTBOX_2,
	IG_GIFTBOX_3,
	IG_GIFTBOX_4,
	IG_EGGBOY,
	IG_EGGGIRL,
	IG_GIFTBOXCHINA,
	IG_LOTTOBOX,
	IG_FOODBAG,
	IG_POTION,
	IG_REDBOX_2,
	IG_BLEUBOX,
	IG_REDBOX,
	IG_GREENBOX,
	IG_YELLOWBOX,
	IG_OLDGIFTBOX,
	IG_MAGICCARDALBUM,
	IG_HOMETOWNGIFT,
	IG_MASQUERADE,
	IG_TRESURE_BOX_WOE,
	IG_MASQUERADE_2,
	IG_EASTER_SCROLL,
	IG_PIERRE_TREASUREBOX,
	IG_CHERISH_BOX,
	IG_CHERISH_BOX_ORI,
	IG_LOUISE_COSTUME_BOX,
	IG_XMAS_GIFT,
	IG_FRUIT_BASKET,
	IG_IMPROVED_COIN_BAG,
	IG_INTERMEDIATE_COIN_BAG,
	IG_MINOR_COIN_BAG,
	IG_S_GRADE_COIN_BAG,
	IG_A_GRADE_COIN_BAG,
	IG_ADVANCED_WEAPONS_BOX,
	IG_SPLENDID_BOX,
	IG_SPLENDID_BOX2,
	IG_CARDALBUM_ARMOR,
	IG_CARDALBUM_HELM,
	IG_CARDALBUM_ACC,
	IG_CARDALBUM_SHOES,
	IG_CARDALBUM_SHIELD,
	IG_CARDALBUM_WEAPON,
	IG_CARDALBUM_GARMENT,
	IG_FLAMEL_CARD,
	IG_SPECIAL_BOX,
	IG_RWC_PARTI_BOX,
	IG_RWC_FINAL_COMP_BOX,
	IG_GIFT_BUNDLE,
	IG_CARACAS_RING_BOX,
	IG_CRUMPLED_PAPER,
	IG_SOLO_GIFT_BASKET,
	IG_COUPLE_EVENT_BASKET,
	IG_GM_WARP_BOX,
	IG_FORTUNE_COOKIE1,
	IG_FORTUNE_COOKIE2,
	IG_FORTUNE_COOKIE3,
	IG_NEW_GIFT_ENVELOPE,
	IG_PASSION_FB_HAT_BOX,
	IG_COOL_FB_HAT_BOX,
	IG_VICTORY_FB_HAT_BOX,
	IG_GLORY_FB_HAT_BOX,
	IG_PASSION_HAT_BOX2,
	IG_COOL_HAT_BOX2,
	IG_VICTORY_HAT_BOX2,
	IG_ASPERSIO_5_SCROLL_BOX,
	IG_PET_EGG_SCROLL_BOX1,
	IG_PET_EGG_SCROLL_BOX2,
	IG_PET_EGG_SCROLL1,
	IG_PET_EGG_SCROLL2,
	IG_PET_EGG_SCROLL_BOX3,
	IG_PET_EGG_SCROLL_BOX4,
	IG_PET_EGG_SCROLL_BOX5,
	IG_PET_EGG_SCROLL3,
	IG_PET_EGG_SCROLL4,
	IG_PET_EGG_SCROLL5,
	IG_INFILTRATOR_BOX,
	IG_MURAMASA_BOX,
	IG_EXCALIBUR_BOX,
	IG_COMBAT_KNIFE_BOX,
	IG_COUNTER_DAGGER_BOX,
	IG_KAISER_KNUCKLE_BOX,
	IG_POLE_AXE_BOX,
	IG_MIGHTY_STAFF_BOX,
	IG_RIGHT_EPSILON_BOX,
	IG_BALISTAR_BOX,
	IG_DIARY_OF_GREAT_SAGE_BOX,
	IG_ASURA_BOX,
	IG_APPLE_OF_ARCHER_BOX,
	IG_BUNNY_BAND_BOX,
	IG_SAHKKAT_BOX,
	IG_LORD_CIRCLET_BOX,
	IG_ELVEN_EARS_BOX,
	IG_STEEL_FLOWER_BOX,
	IG_CRITICAL_RING_BOX,
	IG_EARRING_BOX,
	IG_RING_BOX,
	IG_NECKLACE_BOX,
	IG_GLOVE_BOX,
	IG_BROOCH_BOX,
	IG_ROSARY_BOX,
	IG_SAFETY_RING_BOX,
	IG_VESPER_CORE01_BOX,
	IG_VESPER_CORE02_BOX,
	IG_VESPER_CORE03_BOX,
	IG_VESPER_CORE04_BOX,
	IG_PET_EGG_SCROLL_BOX6,
	IG_PET_EGG_SCROLL_BOX7,
	IG_PET_EGG_SCROLL_BOX8,
	IG_PET_EGG_SCROLL_BOX9,
	IG_PET_EGG_SCROLL_BOX10,
	IG_PET_EGG_SCROLL_BOX11,
	IG_PET_EGG_SCROLL6,
	IG_PET_EGG_SCROLL7,
	IG_PET_EGG_SCROLL8,
	IG_PET_EGG_SCROLL9,
	IG_PET_EGG_SCROLL10,
	IG_PET_EGG_SCROLL11,
	IG_CP_HELM_SCROLL_BOX,
	IG_CP_SHIELD_SCROLL_BOX,
	IG_CP_ARMOR_SCROLL_BOX,
	IG_CP_WEAPON_SCROLL_BOX,
	IG_REPAIR_SCROLL_BOX,
	IG_SUPER_PET_EGG1,
	IG_SUPER_PET_EGG2,
	IG_SUPER_PET_EGG3,
	IG_SUPER_PET_EGG4,
	IG_SUPER_CARD_PET_EGG1,
	IG_SUPER_CARD_PET_EGG2,
	IG_SUPER_CARD_PET_EGG3,
	IG_SUPER_CARD_PET_EGG4,
	IG_VIGORGRA_PACKAGE1,
	IG_VIGORGRA_PACKAGE2,
	IG_VIGORGRA_PACKAGE3,
	IG_VIGORGRA_PACKAGE4,
	IG_VIGORGRA_PACKAGE5,
	IG_VIGORGRA_PACKAGE6,
	IG_VIGORGRA_PACKAGE7,
	IG_VIGORGRA_PACKAGE8,
	IG_VIGORGRA_PACKAGE9,
	IG_VIGORGRA_PACKAGE10,
	IG_VIGORGRA_PACKAGE11,
	IG_VIGORGRA_PACKAGE12,
	IG_PET_EGG_SCROLL12,
	IG_PET_EGG_SCROLL13,
	IG_PET_EGG_SCROLL14,
	IG_SUPER_PET_EGG5,
	IG_SUPER_PET_EGG6,
	IG_SUPER_PET_EGG7,
	IG_SUPER_PET_EGG8,
	IG_PET_EGG_SCROLL_E,
	IG_RAMEN_HAT_BOX,
	IG_MYSTERIOUS_TRAVEL_SACK1,
	IG_MYSTERIOUS_TRAVEL_SACK2,
	IG_MYSTERIOUS_TRAVEL_SACK3,
	IG_MYSTERIOUS_TRAVEL_SACK4,
	IG_MAGICIAN_CARD_BOX,
	IG_ACOLYTE_CARD_BOX,
	IG_ARCHER_CARD_BOX,
	IG_SWORDMAN_CARD_BOX,
	IG_THIEF_CARD_BOX,
	IG_MERCHANT_CARD_BOX,
	IG_HARD_CORE_SET_BOX,
	IG_KITTY_SET_BOX,
	IG_SOFT_CORE_SET_BOX,
	IG_DEVIRUCHI_SET_BOX,
	IG_MVP_HUNT_BOX,
	IG_BREWING_BOX,
	IG_XMAS_PET_SCROLL,
	IG_LUCKY_SCROLL08,
	IG_BR_SWORDPACKAGE,
	IG_BR_MAGEPACKAGE,
	IG_BR_ACOLPACKAGE,
	IG_BR_ARCHERPACKAGE,
	IG_BR_MERPACKAGE,
	IG_BR_THIEFPACKAGE,
	IG_ACIDBOMB_10_BOX,
	IG_BASIC_SIEGE_SUPPLY_BOX,
	IG_ADV_SIEGE_SUPPLY_BOX,
	IG_ELITE_SIEGE_SUPPLY_BOX,
	IG_SAKURA_SCROLL,
	IG_BEHOLDER_RING_BOX,
	IG_HALLOW_RING_BOX,
	IG_CLAMOROUS_RING_BOX,
	IG_CHEMICAL_RING_BOX,
	IG_INSECTICIDE_RING_BOX,
	IG_FISHER_RING_BOX,
	IG_DECUSSATE_RING_BOX,
	IG_BLOODY_RING_BOX,
	IG_SATANIC_RING_BOX,
	IG_DRAGOON_RING_BOX,
	IG_ANGEL_SCROLL,
	IG_DEVIL_SCROLL,
	IG_SURPRISE_SCROLL,
	IG_JULY7_SCROLL,
	IG_BACSOJIN_SCROLL,
	IG_ANIMAL_SCROLL,
	IG_HEART_SCROLL,
	IG_NEW_YEAR_SCROLL,
	IG_VALENTINE_PLEDGE_BOX,
	IG_OX_TAIL_SCROLL,
	IG_BUDDAH_SCROLL,
	IG_EVIL_INCARNATION,
	IG_CLOVER_BOX_MOUTH,
	IG_MOUTH_BUBBLE_GUM_BOX,
	IG_CLOVER_BOX_MOUTH2,
	IG_CLOVER_BOX_MOUTH4,
	IG_BGUM_BOX_IN_MOUTH2,
	IG_BGUM_BOX_IN_MOUTH4,
	IG_TW_OCTOBER_SCROLL,
	IG_MY_SCROLL1,
	IG_TW_NOV_SCROLL,
	IG_MY_SCROLL2,
	IG_PR_RESET_STONE_BOX,
	IG_FPR_RESET_STONE_BOX,
	IG_MAJESTIC_DEVIL_SCROLL,
	IG_LIFE_RIBBON_BOX,
	IG_LIFE_RIBBON_BOX2,
	IG_LIFE_RIBBON_BOX3,
	IG_MAGIC_CANDY_BOX10,
	IG_RWC2010_SUITCASEA,
	IG_RWC2010_SUITCASEB,
	IG_SAGITTARIUS_SCROLL,
	IG_SAGITTARIUS_SCR_BOX,
	IG_SAGITTAR_DIADEM_SCROLL,
	IG_SAGITTAR_DI_SCROLL_BOX,
	IG_CAPRI_CROWN_SCROLL,
	IG_CAPRI_CROWN_SCROLL_BOX,
	IG_CAPRICON_DI_SCROLL,
	IG_CAPRICON_DI_SCROLL_BOX,
	IG_AQUARIUS_DIADEM_SCROLL,
	IG_AQUARIUS_DI_SCROLL_BOX,
	IG_LOVELY_AQUARIUS_SCROLL,
	IG_LOVELY_AQUARIUS_BOX,
	IG_PISCES_DIADEM_SCROLL,
	IG_PISCES_DIADEM_BOX,
	IG_ENERGETIC_PISCES_SCROLL,
	IG_ENERGETIC_PISCES_BOX,
	IG_ARIES_SCROLL,
	IG_ARIES_SCROLL_BOX,
	IG_BOARDING_HALTER_BOX,
	IG_TAURUS_DIADEM_SCROLL,
	IG_TAURUS_DI_SCROLL_BOX,
	IG_UMBALA_SPIRIT_BOX2,
	IG_F_UMBALA_SPIRIT_BOX2,
	IG_TAURUS_CROWN_SCROLL,
	IG_TAURUS_CROWN_SCROLL_BOX,
	IG_GEMI_DIADEM_SCROLL,
	IG_GEMI_DIADEM_SCROLL_BOX,
	IG_SUPER_PET_EGG1_2,
	IG_SUPER_PET_EGG4_2,
	IG_FIRE_BRAND_BOX,
	IG_BR_INDEPENDENCE_SCROLL,
	IG_ALL_IN_ONE_RING_BOX,
	IG_GEMI_CROWN_SCROLL,
	IG_GEMI_CROWN_SCROLL_BOX,
	IG_RWC_SPECIAL_SCROLL,
	IG_RWC_LIMITED_SCROLL,
	IG_ASGARD_SCROLL,
	IG_MS_CANCER_SCROLL,
	IG_RWC_SUPER_SCROLL,
	IG_LEO_SCROLL,
	IG_MS_VIRGO_SCROLL,
	IG_LUCKY_EGG_C6,
	IG_LIBRA_SCROLL,
	IG_HALLO_SCROLL,
	IG_MS_SCORPIO_SCROLL,
	IG_TCG_CARD_SCROLL,
	IG_BOITATA_SCROLL,
	IG_LUCKY_EGG_C2,
	IG_LUCKY_EGG_C6_,
	IG_LUCKY_EGG_C9,
	IG_LUCKY_EGG_C7,
	IG_LUCKY_EGG_C8,
	IG_LUCKY_EGG_C10,
	IG_WIND_TYPE_SCROLL,
	IG_LUCKY_EGG_C3,
	IG_LUCKY_EGG_C4,
	IG_LUCKY_EGG_C5,
	IG_WEATHER_REPORT_BOX,
	IG_COMIN_ACTOR_BOX,
	IG_HEN_SET_BOX,
	IG_LUCKY_EGG_C,
	IG_WATER_TYPE_SCROLL,
	IG_EARTH_TYPE_SCROLL,
	IG_EARTH_TYPE_SCROLL_,
	IG_SPLASH_SCROLL,
	IG_VOCATION_SCROLL,
	IG_WISDOM_SCROLL,
	IG_PATRON_SCROLL,
	IG_HEAVEN_SCROLL,
	IG_TW_AUG_SCROLL,
	IG_TW_NOV_SCROLL2,
	IG_ILLUSION_NOTHING,
	IG_TW_SEP_SCROLL,
	IG_FLAME_LIGHT,
	IG_TW_RAINBOW_SCROLL,
	IG_TW_RED_SCROLL,
	IG_TW_ORANGE_SCROLL,
	IG_TW_YELLOW_SCROLL,
	IG_SCROLL_OF_DEATH,
	IG_SCROLL_OF_LIFE,
	IG_SCROLL_OF_MAGIC,
	IG_SCROLL_OF_THEWS,
	IG_SCROLL_OF_DARKNESS,
	IG_SCROLL_OF_HOLINESS,
	IG_HORNED_SCROLL,
	IG_MERCURY_SCROLL,
	IG_CHALLENGE_KIT,
	IG_TW_APRIL_SCROLL,
	IG_TW_OCTOBER_SCROLL_,
	IG_SUMMER_SCROLL3,
	IG_C_WING_OF_FLY_3DAY_BOX,
	IG_RWC_2012_SET_BOX,
	IG_EX_DEF_POTION_BOX,
	IG_RWC_SCROLL_2012,
	IG_OLD_COIN_POCKET,
	IG_HIGH_COIN_POCKET,
	IG_MID_COIN_POCKET,
	IG_LOW_COIN_POCKET,
	IG_SGRADE_POCKET,
	IG_AGRADE_POCKET,
	IG_BGRADE_POCKET,
	IG_CGRADE_POCKET,
	IG_DGRADE_POCKET,
	IG_EGRADE_POCKET,
	IG_PTOTECTION_SEAGOD_BOX,
	IG_HAIRTAIL_BOX1,
	IG_HAIRTAIL_BOX2,
	IG_SPEARFISH_BOX1,
	IG_SPEARFISH_BOX2,
	IG_SAUREL_BOX1,
	IG_SAUREL_BOX2,
	IG_TUNA_BOX1,
	IG_TUNA_BOX2,
	IG_MALANG_CRAB_BOX1,
	IG_MALANG_CRAB_BOX2,
	IG_BRINDLE_EEL_BOX1,
	IG_BRINDLE_EEL_BOX2,
	IG_PTOTECTION_SEAGOD_BOX2,
	IG_PTOTECTION_SEAGOD_BOX3,
	IG_OCTO_HSTICK_BOX,
	IG_OCTO_HSTICK_BOX2,
	IG_OCTO_HSTICK_BOX3,
	IG_SILVERVINE_FRUIT_BOX10,
	IG_SILVERVINE_FRUIT_BOX40,
	IG_SILVERVINE_FRUIT_BOX4,
	IG_MALANG_WOE_ENCARD_BOX,
	IG_XMAS_BLESS,
	IG_FIRE_TYPE_SCROLL,
	IG_BLUE_SCROLL,
	IG_GOOD_STUDENT_GIFT_BOX,
	IG_BAD_STUDENT_GIFT_BOX,
	IG_INDIGO_SCROLL,
	IG_VIOLET_SCROLL,
	IG_BI_HWANG_SCROLL,
	IG_JUNG_BI_SCROLL,
	IG_JE_UN_SCROLL,
	IG_YONG_KWANG_SCROLL,
	IG_HALLOWEEN_G_BOX,
	IG_SOLO_CHRISTMAS_GIFT,
	IG_SG_WEAPON_SUPPLY_BOX,
	IG_CANDY_HOLDER,
	IG_LUCKY_BAG,
	IG_HOLY_EGG_2,
	IG_ADVENTURER_RETURNS_SUPPORT_BOX,
	IG_SUPPORT_PACKAGE,
	IG_SUPPORT_PACKAGE_10,
	IG_EVENT_ALMIGHTY_BOX,
	IG_EVENT_ALMIGHTY_BOX_100,
	IG_LOTTOBOX1,
	IG_LOTTOBOX2,
	IG_LOTTOBOX3,
	IG_LOTTOBOX4,
	IG_LOTTOBOX5,
	IG_SUPPORT_PACKAGE_III,
	IG_SUPPORT_PACKAGE_III_10,
	IG_UNLIMITED_BOX,
	IG_UNLIMITED_BOX_10,
	IG_UNLIMITED_BOX_II,
	IG_UNLIMITED_BOX_II_10,
	IG_THREE_MASTER_PACKAGE_III,
	IG_THREE_MASTER_PACKAGE_III_10,
	IG_2013_RWC_SCROLL,
	IG_SUPPORT_PACKAGE_II,
	IG_SUPPORT_PACKAGE_II_10,
	IG_LEVEL_UP_BOX100,
	IG_LEVEL_UP_BOX120,
	IG_LEVEL_UP_BOX130,
	IG_LEVEL_UP_BOX140,
	IG_LEVEL_UP_BOX150,
	IG_LEVEL_UP_BOX160,
	IG_GIFT_BUFF_SET,
	IG_LUCKY_SILVERVINE_FRUIT_BOX_III10,
	IG_LUCKY_SILVERVINE_FRUIT_BOX_III110,
	IG_OLD_ORE_BOX,
	IG_BLESSING_LUCKY_SCROLL,
	IG_SOGRAT_LUCKY_SCROLL,
	IG_GARNET_LUCKY_SCROLL,
	IG_AMORA_LUCKY_SCROLL,
	IG_VENUS_LUCKY_SCROLL,
	IG_ERZULIE_LUCKY_SCROLL,
	IG_MAJESTIC_LUCKY_SCROLL,
	IG_EPIC_HEROES_LUCKY_EGG,
	IG_HERO_MIDGARD_EGG,
	IG_IMORTAL_MIDGARD_SCROLL,
	IG_TW_13Y_LUCKY_EGG_06,
	IG_HAPPY_TIME_SCROLL,
	IG_TIME_TRAVEL_SCROLL,
	IG_SOLARIS_FESTIVAL_SCROLL,
	IG_MIDGARD_FES_SCROLL,
	IG_MIDGARD_SCROLL,
	IG_SWEET_MIDGARD_SCROLL,
	IG_WINTER_MIDGARD_SCROLL,
	IG_SPRING_FESTIVAL_SCROLL,
	IG_IDRO10TH_SCROLL,
	IG_REQUIEM_SCROLL,
	IG_HOLY_SPIRIT_SCROLL,
	IG_GARUDA_SCROLL,
	IG_THANKS_GIVING_SCROLL,
	IG_IDN_LEGEND_HERO_SCROLL,
	IG_BLESSING_MIDGARD_SCROLL,
	IG_CHRONOSIAN_LUCKY_SCROLL,
	IG_SANCTUARY_LUCKY_SCROLL,
	IG_CYBORG_LUCKY_SCROLL,
	IG_UNDINE_LUCKY_SCROLL,
	IG_GOD_MATERIAL_BOX,
	IG_COSTAMA_EGG18,
	IG_COSTAMA_EGG19,
	IG_FLOWER_BLOSSOM_SCROLL,
	IG_COSTAMA_EGG24,
	IG_SMITHY_LUCKY_SCROLL,
	IG_GANYMEDE_LUCKY_SCROLL,
	IG_LASTANGEL_LUCKYSCROLL,
	IG_VALKYRIE_LUCKY_SCROLL,
	IG_SPLASH_RAINBOW_LUCKY_SCROLL,
	IG_COSTAMA_EGG22,
	IG_JULY_LUCKY_SCROLL,
	IG_COSTAMA_EGG23,
	IG_COSTAMA_EGG28,
	IG_MIDGARD_LUCKY_SCROLL,
	IG_BLESSING_SCARLET_SCROLL,
	IG_COSTAMA_EGG29,
	IG_INK_BALL,
	IG_SOMETHING_CANDY_HOLDER,
	IG_SHINING_EGG,
	IG_AGUST_LUCKY_SCROLL,
	IG_ELEMENT,
	IG_POISON,
	IG_CASH_FOOD,
	IG_BOMB,
	IG_THROWABLE,
	IG_MERCENARY,
	IG_NOIVE_BOX,
	IG_VALERIAN_SCROLL,
	IG_IMMORTAL_EGG,
	IG_SAPPHIRE_EGG,
	IG_IDN_HEART_SCROLL,
	IG_IDN_WISDOM_EGG,
	IG_CHRISTMAS_BOX,
	IG_SPECIAL_CHRISTMAS_BOX,
	IG_SANTA_GIFT,
	IG_PRIZEOFHERO,
	IG_PRIVATE_AIRSHIP,
	IG_TOKEN_OF_SIEGFRIED,
	IG_ENCHANT_STONE_BOX,
	IG_ENCHANT_STONE_BOX2,
	IG_ENCHANT_STONE_BOX3,
	IG_ENCHANT_STONE_BOX4,
	IG_ENCHANT_STONE_BOX5,
	IG_ENCHANT_STONE_BOX6,
	IG_ENCHANT_STONE_BOX7,
	IG_ENCHANT_STONE_BOX8,
	IG_ENCHANT_STONE_BOX9,
	IG_ENCHANT_STONE_BOX10,
	IG_ENCHANT_STONE_BOX11,
	IG_ENCHANT_STONE_BOX12,
	IG_ENCHANT_STONE_BOX13,
	IG_ENCHANT_STONE_BOX14,
	IG_ENCHANT_STONE_BOX15,
	IG_ENCHANT_STONE_BOX16,
	IG_ENCHANT_STONE_BOX17,
	IG_ENCHANT_STONE_BOX18,
	IG_ENCHANT_STONE_BOX19,
	IG_ENCHANT_STONE_BOX20,
	IG_ENCHANT_STONE_BOX21,
	IG_XMAS_PACKAGE_14,
	IG_EASTER_EGG,
	IG_PITAPAT_BOX,
	IG_HAPPY_BOX_J,
	IG_CLASS_SHADOW_CUBE,
	IG_SEALED_SCROLL,
	IG_SQUAD_PRIZE1,
	IG_SQUAD_PRIZE2,
	IG_LI_NYANGVINE_BOX1_26,
	IG_LI_NYANGVINE_BOX2_26,
	IG_LI_NYANGVINE_BOX3_26,
	IG_ENCHANT_STONE_BOX26,
	IG_THIRD_JOB_STONE_GARMENT_BOX,
	IG_THIRD_JOB_STONE_GARMENT_BOX2,
	IG_THIRD_JOB_STONE_TOP_BOX,
	IG_THIRD_JOB_STONE_TOP_BOX2,
	IG_THIRD_JOB_STONE_MIDDLE_BOX,
	IG_THIRD_JOB_STONE_MIDDLE_BOX2,
	IG_THIRD_JOB_STONE_BOTTOM_BOX,
	IG_THIRD_JOB_STONE_BOTTOM_BOX2,
	IG_SHADOW_EXCHANGE_BOX,
	IG_GUNSLINGER_ENCHANT,
	IG_ENCHANTSTONE_RECIPE,
	IG_PET_EGG_BOX,
	IG_COSTUME_EXCHANGE_BOX,
	IG_FAN_UPGRADE_KIT,
	IG_SUIT_UPGRADE_KIT,
	IG_SCROLL_OF_FALLEN_ANGEL_WINGS,
	IG_CLASS_SHADOW_BOX_WEAPON,
	IG_CLASS_SHADOW_BOX_ARMOR,
	IG_CLASS_SHADOW_BOX_SHOES,
	IG_CLASS_SHADOW_BOX_SHIELD,
	IG_CLASS_SHADOW_BOX_PENDANT,
	IG_CLASS_SHADOW_BOX_EARRING,
	IG_STATUSSHADOW_MIX,
	IG_GEMSTONESHADOW_MIX,
	IG_BEARERSSHADOW_MIX,
	IG_COMPOSESHADOW_MIX,
	IG_RACESHADOW_MIX,
	IG_CANDY_BAG_SCROLL_MELEE,
	IG_CANDY_BAG_SCROLL_RANGE,
	IG_CANDY_BAG_SCROLL_MAGIC,
	IG_BOOSTER_AMPLIFIER,
	IG_MAGICAL_CAT_HAND,
	IG_INFINITYSHADOW_MIX,
	IG_SILVER_STATUE,
	IG_PHYSICALMAGICAL_MIX,
	IG_IMMUNEDATHENA_MIX,
	IG_HARDCHAMPTION_MIX,
	IG_KINGBIRDANCIENT_MIX,
	IG_CRITICALHIT_MIX,
	IG_BS_ITEM_M_S_2,
	IG_BS_ITEM_M_S_8,
	IG_BS_ITEM_M_S_10,
	IG_BS_ITEM_M_S_11,
	IG_BS_ITEM_M_S_34,
	IG_BS_ITEM_M_S_41,
	IG_BS_ITEM_M_S_42,
	IG_BS_ITEM_M_S_43,
	IG_BS_ITEM_M_S_44,
	IG_BS_SHA_M_S_1,
	IG_BS_SHA_M_S_17,
	IG_BS_SHA_M_S_18,
	IG_BS_SHA_M_S_19,
	IG_BS_SHA_M_S_20,
	IG_BS_ITEM_M_S_4,
	IG_BS_ITEM_M_S_6,
	IG_BS_ITEM_M_S_7,
	IG_BS_ITEM_M_S_12,
	IG_BS_ITEM_M_S_13,
	IG_BS_ITEM_M_S_15,
	IG_BS_ITEM_M_S_28,
	IG_BS_ITEM_M_S_29,
	IG_BS_ITEM_M_S_31,
	IG_BS_ITEM_M_S_32,
	IG_BS_ITEM_M_S_33,
	IG_BS_ITEM_M_S_36,
	IG_BS_ITEM_M_S_37,
	IG_BS_ITEM_M_S_38,
	IG_BS_ITEM_M_S_39,
	IG_BS_ITEM_M_S_40,
	IG_BS_ITEM_M_S_45,
	IG_BS_ITEM_M_S_46,
	IG_BS_ITEM_M_S_47,
	IG_BS_ITEM_M_S_48,
	IG_BS_ITEM_M_S_49,
	IG_BS_ITEM_M_S_50,
	IG_BS_SHA_M_S_5,
	IG_BS_SHA_M_S_6,
	IG_BS_SHA_M_S_7,
	IG_BS_SHA_M_S_8,
	IG_BS_SHA_M_S_13,
	IG_BS_SHA_M_S_15,
	IG_BS_SHA_M_S_16,
	IG_BS_SHA_M_S_23,
	IG_BS_ITEM_M_S_5,
	IG_BS_ITEM_M_S_9,
	IG_BS_ITEM_M_S_14,
	IG_BS_ITEM_M_S_16,
	IG_BS_ITEM_M_S_17,
	IG_BS_ITEM_M_S_19,
	IG_BS_ITEM_M_S_27,
	IG_BS_ITEM_M_S_35,
	IG_BS_SHA_M_S_9,
	IG_BS_SHA_M_S_10,
	IG_BS_SHA_M_S_11,
	IG_BS_SHA_M_S_21,
	IG_BS_ITEM_M_S_1,
	IG_BS_ITEM_M_S_3,
	IG_BS_ITEM_M_S_18,
	IG_BS_ITEM_M_S_20,
	IG_BS_ITEM_M_S_21,
	IG_BS_ITEM_M_S_22,
	IG_BS_ITEM_M_S_23,
	IG_BS_ITEM_M_S_24,
	IG_BS_ITEM_M_S_25,
	IG_BS_ITEM_M_S_26,
	IG_BS_ITEM_M_S_30,
	IG_BS_SHA_M_S_3,
	IG_BS_SHA_M_S_4,
	IG_BS_SHA_M_S_12,
	IG_BS_SHA_M_S_14,
	IG_BS_SHA_M_S_24,
	IG_BS_SHA_M_S_25,
	IG_BS_ITEM_M_S_51,
	IG_ENCHANTSTONE_RECIPE_9M,
	IG_IDTEST_SPECIAL,
	IG_PERFECTSIZE_MIX,
	IG_MAGICPIERCING_MIX,
	IG_PIERCING_MIX,
	IG_HASTY_MIX,
	IG_ENCHANTSTONE_RECIPE_4M,
	IG_SHADOW_CUBE,
	IG_SHADOW_CUBE_PENDANT,
	IG_SHADOW_CUBE_EARING,
	IG_ANGELPORING_BOX,
	IG_HELM_OF_FAITH_BOX,
	IG_2022_LUNARNEWYEARS_BOX,
	IG_2020_REWARD_BOX,
	IG_COSTUME_MILE_PACK_26_1,
	IG_COSTUME_MILE_PACK_26_2,
	IG_COSTUME_MILE_PACK_26_3,
	IG_EP17_1_SPC01,
	IG_EP17_1_SPC02,
	IG_EP17_1_SPC03,
	IG_EP17_1_SPC04,
	IG_STABILITYSHADOW_MIX,
	IG_BS_SHA_M_S_2,
	IG_BS_SHA_M_S_22,
	IG_SLD_CARD_RECIPE,
	IG_R_BEARERSSHADOW_MIX,
	IG_M_BLITZSHADOW_MIX,
	IG_RELOADSHADOW_MIX,
	IG_SPELLCASTERSHADOW_MIX,
	IG_MAGICALSHADOW_MIX,
	IG_PHYSICALSHADOW_MIX,
	IG_MAJORAUTOSPELL_MIX,
	IG_ABSORBSHADOW_MIX,
	IG_TRUE_GEMSHADOW_MIX,
	IG_MAMMOTH_MIX,
	IG_FULLTEMPSHADOW_MIX,
	IG_FULLPENESHADOW_MIX,
	IG_REMODEL_HERO_BOOTS,
	IG_ORIENTAL_SWORD_CUBE,
	IG_DRAGONIC_SLAYER_CUBE,
	IG_SHIVER_KATAR_K_CUBE,
	IG_BLADE_KATAR_CUBE,
	IG_SWORD_OF_BLUEFIRE_CUBE,
	IG_SLATE_SWORD_CUBE,
	IG_NARCIS_BOW_CUBE,
	IG_TRUMPET_SHELL_K_CUBE,
	IG_BARB_WIRE_K_CUBE,
	IG_AVENGER_CUBE,
	IG_METEOR_STRIKER_CUBE,
	IG_MAGIC_SWORD_CUBE,
	IG_FATALIST_CUBE,
	IG_ROYAL_BOW_K_CUBE,
	IG_SCALET_DRAGON_L_CUBE,
	IG_SHADOW_STAFF_K_CUBE,
	IG_FREEZING_ROD_CUBE,
	IG_IRON_NAIL_K_CUBE,
	IG_RAY_KNUCKLE_CUBE,
	IG_UNDINE_SPEAR_K_CUBE,
	IG_LIGHT_BLADE_CUBE,
	IG_IRON_STAFF_CUBE,
	IG_BLUE_CRYSTAL_STAFF_CUBE,
	IG_DEMON_HUNT_BIBLE_CUBE,
	IG_SAINT_HALL_CUBE,
	IG_MEAWFOXTAIL_CUBE,
	IG_FOG_DEW_SWORD_CUBE,
	IG_HUMMA_CLEAR_CUBE,
	IG_THOUSAND_SUN_CUBE,
	IG_SPIRIT_PENDULUM_CUBE,
	IG_CRIMSON_ROSE_CUBE,
	IG_MASTER_SOUL_RIFLE_CUBE,
	IG_GOLDEN_LORD_LAUNCHER_CUBE,
	IG_THE_BLACK_CUBE,
	IG_DEMON_SLAYER_SHOT_CUBE,
	IG_RUNE_CRAFT_MATERIALS,
	IG_ELEMENTAL_CONVERTER,
	IG_POISONS,
	IG_BLACKSMITH,
	IG_POTION_CRAFT_MATERIALS,
	IG_KUNAI_BOX,
	IG_BULLET_CASE,
	IG_SOUL_LINKER,
	IG_ELEMENTAL_STONES,
	IG_SHADOW_CUBE_ARMOR,
	IG_SHADOW_CUBE_SHIELD,
	IG_SHADOW_CUBE_SHOES,
	IG_SHADOW_CUBE_WEAPON,
	IG_AUTOMATIC_MODULE_MIX,
	IG_EPIC_MODULE_MIX,
	IG_AUTO_M_I_BOX_A,
	IG_AUTO_M_I_BOX_B,
	IG_ILLUSION_MODULE_MIX,
	IG_ENCHANT_STONE_BOX22,
	IG_ENCHANT_STONE_BOX23,
	IG_ENCHANT_STONE_BOX24,
	IG_ENCHANT_STONE_BOX25,
	IG_ENCHANT_STONE_BOX27,
	IG_ANCIENT_HERO_BOX_1,
	IG_3LV_9REFINE_WEAPON_7GU,
	IG_3LV_10REFINE_WEAPON_8GU,
	IG_3LV_11REFINE_WEAPON_9GU,
	IG_3LV_12REFINE_WEAPON_10G,
	IG_4LV_9REFINE_WEAPON_8GU,
	IG_4LV_10REFINE_WEAPON_9GU,
	IG_4LV_11REFINE_WEAPON_10G,
	IG_BS_ITEM_M_S_52,
	IG_BS_ITEM_M_S_53,
	IG_BS_ITEM_M_S_54,
	IG_BS_ITEM_M_S_55,
	IG_BS_ITEM_M_S_56,
	IG_ENCHANT_STONE_BOX28,
	IG_S_FULLPENE_EARRING,
	IG_S_FULLPENE_PENDANT,
	IG_S_FULLPENE_ARMOR,
	IG_S_FULLPENE_SHOES,
	IG_S_FULLTEMP_EARRING,
	IG_S_FULLTEMP_PENDANT,
	IG_S_FULLTEMP_ARMOR,
	IG_S_FULLTEMP_SHOES,
	IG_S_DURABLE_WEAPON,
	IG_S_DURABLE_SHIELD,
	IG_S_CLEVER_WEAPON,
	IG_S_CLEVER_SHIELD,
	IG_S_ALLMIGHTY_EARRING,
	IG_S_ALLMIGHTY_PENDANT,
	IG_S_TRUEGEM_EARRING,
	IG_S_TRUEGEM_PENDANT,
	IG_S_TRUEGEM_SHOES,
	IG_S_TRUEGEM_ARMOR,
	IG_S_PERFECTSIZE_WEAPON,
	IG_S_PERFECTSIZE_ARMOR,
	IG_S_M_MAMMOTH_EARRING,
	IG_S_M_MAMMOTH_PENDANT,
	IG_S_M_MAMMOTH_ARMOR,
	IG_S_M_MAMMOTH_SHOES,
	IG_S_SPELLCASTER_EARRING,
	IG_S_SPELLCASTER_PENDANT,
	IG_S_SPELLCASTER_ARMOR,
	IG_S_SPELLCASTER_SHOES,
	IG_S_ABSORB_WEAPON,
	IG_S_ABSORB_SHIELD,
	IG_PORINGSPRECIOUSBOX,
	IG_ENCHANT_STONE_BOX29,
	IG_EIN_1HITEMBOX,
	IG_EIN_UNDIUM,
	IG_PC_COSTUME_BOX,
	IG_WET_SEALED_CARD,
	IG_2019_SSTARR_TBOX,
	IG_E_LIFE_POTION_PACK,
	IG_E_DEF_SCROLL_BOX,
	IG_E_ALMIGHTY_BOX,
	IG_E_LIMITPOWERBOOSTER,
	IG_ROYAL_SECRET_BOX,
	IG_SEASON_EVT_REWARD_2,
	IG_HERO_HAMMER_PACKAGE_5,
	IG_FLIPPACKAGE,
	IG_POPE_SCROLL,
	IG_MYSTERIOUS_EGG2,
	IG_GUILDSMAN_RECRUITER_BOX,
	IG_PARTY_RECRUITER_HAT_BOX,
	IG_BF_RECRUITER_HAT_BOX,
	IG_FRIEND_RECR_HAT_BOX,
	IG_GF_RECRUITER_HAT_BOX,
	IG_MARCHER_HAT_BOX,
	IG_F_GUILDSMAN_RECR_BOX,
	IG_F_PARTY_RECR_HAT_BOX,
	IG_FBF_RECRUITER_HAT_BOX,
	IG_F_FRIEND_RECR_HAT_BOX,
	IG_FGF_RECRUITER_HAT_BOX,
	IG_BONUS_BOX01,
	IG_BONUS_BOX02,
	IG_BONUS_BOX03,
	IG_BONUS_BOX04,
	IG_BONUS_BOX05,
	IG_BONUS_BOX06,
	IG_BONUS_BOX07,
	IG_BONUS_BOX08,
	IG_BONUS_BOX09,
	IG_BONUS_BOX10,
	IG_F_BONUS_BOX01,
	IG_F_BONUS_BOX02,
	IG_F_BONUS_BOX03,
	IG_F_BONUS_BOX04,
	IG_F_BONUS_BOX05,
	IG_F_BONUS_BOX06,
	IG_F_BONUS_BOX07,
	IG_F_BONUS_BOX08,
	IG_F_BONUS_BOX09,
	IG_F_BONUS_BOX10,
	IG_FUGIN_EGG01,
	IG_FUGIN_EGG02,
	IG_PUMP_OF_SPIRIT_SCROLL,
	IG_HAPPY_BALLOON_SCROLL,
	IG_ANGRY_MOUTH_C_BOX,
	IG_KRO_LUCKY_BOX,
	IG_CLAYMORE_C_BOX,
	IG_JAMADHAR_C_BOX,
	IG_TWO_HANDED_AXE_C_BOX,
	IG_LANCE_C_BOX,
	IG_HUUMA_GIANT_WHEEL_C_BOX,
	IG_ORCISH_AXE_C_BOX,
	IG_PIKE_C_BOX,
	IG_ENCYCLOPEDIA_C_BOX,
	IG_FIST_C_BOX,
	IG_GUITAR_C_BOX,
	IG_RANTE_C_BOX,
	IG_DAMASCUS_C_BOX,
	IG_FLAMBERGE_C_BOX,
	IG_STUNNER_C_BOX,
	IG_F_KRO_LUCKY_BOX,
	IG_F_CLAYMORE_C_BOX,
	IG_F_JAMADHAR_C_BOX,
	IG_F_TWO_HANDED_AXE_C_BOX,
	IG_F_LANCE_C_BOX,
	IG_F_HUUMA_GIANT_C_BOX,
	IG_F_ORCISH_AXE_C_BOX,
	IG_F_PIKE_C_BOX,
	IG_F_ENCYCLOPEDIA_C_BOX,
	IG_F_FIST_C_BOX,
	IG_F_GUITAR_C_BOX,
	IG_F_RANTE_C_BOX,
	IG_F_DAMASCUS_C_BOX,
	IG_F_FLAMBERGE_C_BOX,
	IG_F_STUNNER_C_BOX,
	IG_F_ANGRY_MOUTH_C_BOX,
	IG_MARIONETTE_C_BOX,
	IG_WHISPER_C_BOX,
	IG_INCUBUS_C_BOX,
	IG_F_MARIONETTE_C_BOX,
	IG_F_WHISPER_C_BOX,
	IG_F_INCUBUS_C_BOX,
	IG_F_ACTI_POTION_BOX,
	IG_RO_DS_HEADGEAR_BOX,
	IG_HOCKEY_MASK_BOX1,
	IG_OBSERVER_BOX1,
	IG_ALL_IN_ONE_RING_BOX1,
	IG_SPRITUAL_TUNIC_BOX1,
	IG_RECUPERATIVE_ARMOR_BOX1,
	IG_SHELTER_RESIST_BOX1,
	IG_SYLPHID_MANTEAU_BOX1,
	IG_REFRESH_SHOES_BOX1,
	IG_WELL_BAKED_TOAST_BOX1,
	IG_WASTELAND_OUTLAW_BOX1,
	IG_LEVER_ACT_RIFLE_BOX1,
	IG_HEALING_STAFF_BOX1,
	IG_PRAXINUS_BOX1,
	IG_GUILD_RECRUIT_BOX1,
	IG_PARTY_RECRUIT_HAT_BOX1,
	IG_BF_RECRUIT_HAT_BOX1,
	IG_GF_RECRUIT_HAT_BOX1,
	IG_FRIEND_RECRUIT_HAT_BOX1,
	IG_CLAYMORE_C_BOX1,
	IG_TWO_HANDED_AXE_C_BOX1,
	IG_LANCE_C_BOX1,
	IG_JAMADHAR_C_BOX1,
	IG_HUUMA_GIANT_C_BOX1,
	IG_ORCISH_AXE_C_BOX1,
	IG_PIKE_C_BOX1,
	IG_ENCYCLOPEDIA_C_BOX1,
	IG_FIST_C_BOX1,
	IG_GUITAR_C_BOX1,
	IG_RANTE_C_BOX1,
	IG_DAMASCUS_C_BOX1,
	IG_FLAMBERGE_C_BOX1,
	IG_STUNNER_C_BOX1,
	IG_ANGRY_MOUTH_C_BOX1,
	IG_SHOOTING_STAR_C_BOX,
	IG_BLOODY_FEAR_C_BOX,
	IG_AHLSPIESS_C_BOX,
	IG_STAFF_OF_HEALING_C_BOX,
	IG_ANTI_DEMON_SHIELD_C_BOX,
	IG_F_SHOOTING_STAR_C_BOX,
	IG_F_BLOODY_FEAR_C_BOX,
	IG_F_AHLSPIESS_C_BOX,
	IG_F_S_HEALING_C_BOX,
	IG_F_A_DEMON_SHIELD_C_BOX,
	IG_MBL_PET_RANDOM_BOX,
	IG_7TH_ANNI_RANDOM_BOX,
	IG_FREYJA_RING_BOX,
	IG_F_FREYJA_RING_BOX,
	IG_F_CLOVER_BOX_MOUTH,
	IG_F_BGUM_BOX_IN_MOUTH,
	IG_F_CLOVER_BOX_MOUTH2,
	IG_F_CLOVER_BOX_MOUTH4,
	IG_F_BGUM_BOX_IN_MOUTH2,
	IG_F_BGUM_BOX_IN_MOUTH4,
	IG_FREYJA_RING_BOX2,
	IG_F_FREYJA_RING_BOX2,
	IG_BM_PACK_BOX_A,
	IG_F_BM_PACK_BOX_A,
	IG_BM_PACK_BOX_B,
	IG_F_BM_PACK_BOX_B,
	IG_XMAS_CARD_BOX,
	IG_F_XMAS_CARD_BOX,
	IG_XMAS_CARD_BOX2,
	IG_F_XMAS_CARD_BOX2,
	IG_E_BUNNY_BAND_BOX,
	IG_SUMMER_SCROLL2,
	IG_F_ACTI_POTION_BOX2,
	IG_HALF_MEGIN_BOX,
	IG_HALF_BRYSING_BOX,
	IG_SPIKED_SCARF_BOX2,
	IG_RAINBOW_SCARF_BOX2,
	IG_SPIKED_SCARF_BOX3,
	IG_RAINBOW_SCARF_BOX3,
	IG_F_SPIKED_SCARF_BOX,
	IG_F_RAINBOW_SCARF_BOX,
	IG_F_SPIKED_SCARF_BOX2,
	IG_F_RAINBOW_SCARF_BOX2,
	IG_F_SPIKED_SCARF_BOX3,
	IG_F_RAINBOW_SCARF_BOX3,
	IG_F_RIBBON_OF_LIFE_BOX,
	IG_F_RIBBON_OF_LIFE_BOX2,
	IG_F_RIBBON_OF_LIFE_BOX3,
	IG_F_RAPID_LIFE_WATER_BOX,
	IG_F_MAGIC_CANDY_BOX10,
	IG_UMBALA_SPIRIT_BOX,
	IG_F_UMBALA_SPIRIT_BOX,
	IG_UMBALA_SPIRIT_BOX_7DAY,
	IG_C_REPAIR_SCROLL_BOX,
	IG_C_REPAIR_SCROLL_BOX10,
	IG_C_UMBALA_SPIRIT_BOX2,
	IG_C_MURAMASA_BOX,
	IG_C_EXCALIBUR_BOX,
	IG_C_COMBAT_KNIFE_BOX,
	IG_C_COUNTER_DAGGER_BOX,
	IG_C_MIGHTY_STAFF_BOX,
	IG_C_RIGHT_EPSILON_BOX,
	IG_C_BALISTAR_BOX,
	IG_C_D_GREAT_SAGE_BOX,
	IG_C_ASURA_BOX,
	IG_C_BROOCH_BOX,
	IG_C_SAFETY_RING_BOX,
	IG_C_PECOPECO_HAIRBAND_BOX,
	IG_C_NAGAN_BOX,
	IG_C_SKEWER_BOX,
	IG_C_QUADRILLE_BOX,
	IG_C_FIRE_BRAND_BOX,
	IG_C_MASQUERADE_BOX,
	IG_C_ORC_HERO_HELM_BOX,
	IG_C_KRO_D_KITTY_BOX,
	IG_C_BLOODY_IRON_BALL_BOX,
	IG_C_HOCKEY_MASK_BOX,
	IG_C_OBSERVER_BOX,
	IG_C_ALL_IN_ONE_RING_BOX,
	IG_C_SPIRITUAL_TUNIC_BOX,
	IG_C_RECUP_ARMOR_BOX,
	IG_C_SHELTER_RESIST_BOX,
	IG_C_SYLPHID_MANTEAU_BOX,
	IG_C_REFRESH_SHOES_BOX,
	IG_C_WASTELAND_OUTLAW_BOX,
	IG_C_LEVER_ACT_RIFLE_BOX,
	IG_C_CLAYMORE_C_BOX,
	IG_C_JAMADHAR_C_BOX,
	IG_C_TWO_HANDED_AXE_C_BOX,
	IG_C_LANCE_C_BOX,
	IG_C_ORCISH_AXE_C_BOX,
	IG_C_ENCYCLOPEDIA_C_BOX,
	IG_C_PIKE_C_BOX,
	IG_C_FIST_C_BOX,
	IG_C_DAMASCUS_C_BOX,
	IG_C_FLAMBERGE_C_BOX,
	IG_C_STUNNER_C_BOX,
	IG_C_SHOOTING_STAR_C_BOX,
	IG_C_BLOODY_FEAR_C_BOX,
	IG_C_STAFF_HEALING_C_BOX,
	IG_C_CLOVER_BOX_MOUTH,
	IG_C_CLOVER_BOX_MOUTH2,
	IG_C_CLOVER_BOX_MOUTH4,
	IG_C_BGUM_BOX_IN_MOUTH,
	IG_C_BGUM_BOX_IN_MOUTH2,
	IG_C_BGUM_BOX_IN_MOUTH4,
	IG_C_SPIKED_SCARF_BOX,
	IG_C_SPIKED_SCARF_BOX2,
	IG_C_SPIKED_SCARF_BOX3,
	IG_C_RAINBOW_SCARF_BOX,
	IG_C_RAINBOW_SCARF_BOX2,
	IG_C_RAINBOW_SCARF_BOX3,
	IG_C_RIBBON_OF_LIFE_BOX,
	IG_C_RIBBON_OF_LIFE_BOX2,
	IG_C_RIBBON_OF_LIFE_BOX3,
	IG_C_LOVE_ANGEL_BOX,
	IG_C_LOVE_ANGEL_BOX_1M,
	IG_C_SQUIRREL_BOX,
	IG_C_SQUIRREL_BOX_1M,
	IG_C_PICTURE_DIARY_BOX,
	IG_C_PICTURE_DIARY_BOX_1M,
	IG_C_MINI_HEART_BOX,
	IG_C_MINI_HEART_BOX_1M,
	IG_C_NEWCOMER_BOX,
	IG_C_NEWCOMER_BOX_1M,
	IG_C_KID_BOX,
	IG_C_KID_BOX_1M,
	IG_C_MAGIC_CASTLE_BOX,
	IG_C_MAGIC_CASTLE_BOX_1M,
	IG_C_BULGING_HEAD_BOX,
	IG_C_BULGING_HEAD_BOX_1M,
	IG_REFINE_ORE_BOX,
	IG_ATTEND_C_BOX,
	IG_TRANS_A_SET,
	IG_TRANS_B_SET,
	IG_TRANS_C_SET,
	IG_MADE_DISH_SET,
	IG_MADE_DISH_BOX,
	IG_RED_BOOSTER_BOX20_2,
	IG_MYSTIC_POWDER_BOX30_2,
	IG_EC_BATTLE_MANUAL_BOX,
	IG_EC_JOB_MANUAL25_BOX10,
	IG_GLOBAL_HAT_FES_BOX,
	IG_GLOBAL_HAT_FES_5_BOX,
	IG_GLOBAL_HAT_FES_BOX2,
	IG_MADE_DISH_BOX1,
	IG_MYSTERIOUS_WATER_BOX50,
	IG_MYSTERIOUS_WATER_BOX50_,
	IG_REFINE_ORE_BOX2,
	IG_RED_POTION_RG_BOX,
	IG_BLUE_POTION_RG_BOX,
	IG_GOLDENAPPLE_P_RG_BOX,
	IG_GOLDENAPPLE_RG_BOX,
	IG_GOLDEN_POTION_RG_BOX,
	IG_SPECIAL_PO_BOX,
	IG_BATTLE_MANUAL_LIMIT_BOX,
	IG_UNLIMITED_20_BOX,
	IG_CUSTOMIZING_BOX,
	IG_NYANGVINE_BOX10_,
	IG_NYANGVINE_BOX100,
	IG_SERVICE30_M_01_BOX,
	IG_SERVICE30_F_01_BOX,
	IG_3_LIFE_POTION_PACK6,
	IG_3_LIFE_POTION_10PACK6,
	IG_REFINE_ORE_BOX10,
	IG_REFINE_ORE_BOX10_SET10,
	IG_SERVICE30P_M_01_BOX,
	IG_SERVICE30P_F_01_BOX,
	IG_VIGORGRA_PACKAGE_V5,
	IG_VIGORGRA_PACKAGE_SET_V5,
	IG_C_GREED_1HOUR_BOX,
	IG_C_CATPAW_1DAY_BOX,
	IG_UNLIMITED_BOX4,
	IG_UNLIMITED_10_BOX4,
	IG_C_GIANT_FLY_1DAY_BOX,
	IG_REFINE_ORE_BOX11,
	IG_REFINE_ORE_BOX11_SET10,
	IG_3_LIFE_POTION_PACK7,
	IG_3_LIFE_POTION_10PACK7,
	IG_ALMIGHTY_PLUS_BOX,
	IG_ALMIGHTY100_PLUSBOX,
	IG_LIMIT_POWER_BOOSTER2,
	IG_LIMITPOWERBOOSTER2_100,
	IG_LC_BOARDING_HALTER_BOX,
	IG_REFINE_ORE_BOX12,
	IG_REFINE_ORE_BOX12_SET10,
	IG_VIGORGRA_PLUS_PACKAGE,
	IG_VIGORGRA_PLUS_SET,
	IG_3_LIFE_POTION_PACK8,
	IG_3_LIFE_POTION_10PACK8,
	IG_UNLIMITED_BOX5,
	IG_UNLIMITED_10_BOX5,
	IG_REFINE_ORE_BOX13,
	IG_REFINE_ORE_BOX13_SET10,
	IG_HD_REFINE_ORE_BOX,
	IG_NYANGVINE_BOX10_2,
	IG_NYANGVINE_BOX100_2,
	IG_VIGORGRA_PLUS_PACKAGE2,
	IG_VIGORGRA_PLUS_SET2,
	IG_3_LIFE_POTION_PACK9,
	IG_3_LIFE_POTION_10PACK9,
	IG_REFINE_ORE_BOX14,
	IG_REFINE_ORE_BOX14_SET10,
	IG_HD_REFINE_ORE_BOX2,
	IG_ALMIGHTY_PLUS_BOX2,
	IG_ALMIGHTY100_PLUSBOX2,
	IG_DEF_SCROLL_BOX,
	IG_DEF_SCROLL_BOX_SET,
	IG_LIMIT_POWER_BOOSTER3,
	IG_LIMITPOWERBOOSTER3_100,
	IG_HD_HIGH_REFINE_BOX,
	IG_REFINE_ORE_BOX15_SET10,
	IG_REFINE_ORE_BOX15,
	IG_HD_REFINE_ORE_BOX3,
	IG_VIGORGRA_PLUS_PACKAGE3,
	IG_VIGORGRA_PLUS_SET3,
	IG_C_CATPAW_7DAY_BOX,
	IG_ALMIGHTY_PLUS_BOX3,
	IG_ALMIGHTY100_PLUSBOX3,
	IG_3_LIFE_POTION_PACK10,
	IG_3_LIFE_POTION_10PACK10,
	IG_UNLIMITED_10_BOX6,
	IG_UNLIMITED_BOX6,
	IG_REFINE_ORE_BOX16,
	IG_REFINE_ORE_BOX16_SET10,
	IG_HD_REFINE_ORE_BOX4,
	IG_HD_HIGH_REFINE_BOX2,
	IG_DEF_SCROLL_BOX2,
	IG_DEF_SCROLL_BOX_SET2,
	IG_3_LIFE_POTION_PACK11,
	IG_3_LIFE_POTION_10PACK11,
	IG_RTC_ANNIV_BOX,
	IG_REFINE_ORE_BOX17_SET10,
	IG_REFINE_ORE_BOX17,
	IG_HD_REFINE_ORE_BOX5,
	IG_HD_HIGH_REFINE_BOX3,
	IG_INFINITY_BOX,
	IG_INFINITY_10_BOX,
	IG_NEW_VIGORGRA_PACKAGE,
	IG_NEW_VIGORGRA_SET,
	IG_LIMITPOWERBOOSTER4_100,
	IG_LIMIT_POWER_BOOSTER4,
	IG_2017_GSTAR_COSTUMEBOX,
	IG_ZERO_MERCHANT_BELL_BOX,
	IG_ZERO_KAFRA_BELL_BOX,
	IG_REFINE_ORE_BOX18,
	IG_REFINE_ORE_BOX18_SET10,
	IG_HD_REFINE_ORE_BOX6,
	IG_HD_HIGH_REFINE_BOX4,
	IG_NEW_3_POTION_PACK,
	IG_NEW_3_POTION_10PACK,
	IG_NYANGVINE_BOX10_3,
	IG_NYANGVINE_BOX100_3,
	IG_ALMIGHTY_PLUS_BOX4,
	IG_ALMIGHTY100_PLUSBOX4,
	IG_REFINE_ORE_BOX19_SET10,
	IG_REFINE_ORE_BOX19,
	IG_HD_REFINE_ORE_BOX7,
	IG_HD_HIGH_REFINE_BOX5,
	IG_DEF_SCROLL_BOX3,
	IG_DEF_SCROLL_BOX_SET3,
	IG_3_LIFE_POTION_PACK12,
	IG_3_LIFE_POTION_10PACK12,
	IG_INFINITY_BOX2,
	IG_INFINITY_10_BOX2,
	IG_A_VIGORGRA_SET,
	IG_A_VIGORGRA_PACKAGE,
	IG_A_ALMIGHTY100_BOX,
	IG_A_ALMIGHTY_BOX,
	IG_A_REFINE_ORE_BOX_SET,
	IG_A_REFINE_ORE_BOX,
	IG_A_HD_REFINE_ORE_BOX,
	IG_A_HD_HIGH_REFINE_BOX,
	IG_A_LIMITPOWERBOOSTER_100,
	IG_A_LIMITPOWERBOOSTER,
	IG_A_DEF_SCROLL_BOX_SET,
	IG_A_DEF_SCROLL_BOX,
	IG_A_UNLIMITED_10_BOX,
	IG_A_UNLIMITED_BOX,
	IG_MADE_DISH_BOX2,
	IG_COSTUME_SET1_KR,
	IG_SEALED_SCROLL3,
	IG_STATUS_DECREASE_SCROLL,
	IG_MAD_BUNNY_SCROLL,
	IG_SEALED_HAT_BOX,
	IG_SEALED_HAT_BOX2,
	IG_IMPROVED_NOMALBOX,
	IG_IMPROVED_WOODENBOX,
	IG_IMPROVED_GOLDENBOX,
	IG_IMPROVED_PLATINUMBOX,
	IG_13THCELEBRATEBOX,
	IG_CROSSEVENTBOX,
	IG_PIAMETTE_SCROLL,
	IG_COWLICK_BOX,
	IG_STRAIGHT_PONY_BOX,
	IG_LOOSE_WAVE_TWIN_BOX,
	IG_INVISIBLE_SCROLL,
	IG_NEW_HAT_SCROLL,
	IG_NEW_HAT_BOX,
	IG_COKINGOPENBOX,
	IG_2015_SPECIAL_SCROLL,
	IG_2015_SPECIAL_BOX,
	IG_2015_ANGEL_SCROLL,
	IG_DECEMBERGIFTBOX_2016,
	IG_NOVEMBERGIFTBOX_2016,
	IG_PORING_SCROLL,
	IG_MOBI_SUPPORT_BOX,
	IG_TIME_GUARDIAN_BOX2,
	IG_ASSORTED_SHDOWBOX,
	IG_AMISTR_SCROLL,
	IG_AMISTR_BOX,
	IG_SHADOW_SCROLL,
	IG_SPIRIT_SCROLL,
	IG_SEALED_HAT_BOX3,
	IG_CACHUA_WEAPON,
	IG_CACHUA_ROBE,
	IG_CACHUA_MAIL,
	IG_CACHUA_SHOES,
	IG_CACHUA_SHIELD,
	IG_CACHUA_HELM,
	IG_BALLOON_SCROLL,
	IG_PORING_BALLOON_BOX,
	IG_RIBEL_JUMPING_BOX,
	IG_GUNSLINGER_SCROLL,
	IG_GREEN_SCROLL_K,
	IG_KAFRA_SCROLL,
	IG_SIGRUN_SCROLL,
	IG_PREMIUMWOODENBOX,
	IG_PREMIUMGOLDENBOX,
	IG_PREMIUMPLATINUMBOX,
	IG_PREMIUMNOMALBOX,
	IG_NEW_HAT_SCROLL2,
	IG_NEW_HAT_BOX2,
	IG_2016_SPECIAL_SCROLL,
	IG_2016_SPECIAL_BOX,
	IG_BISCUIT_STICK_2SET,
	IG_RACING_EXCHANGE,
	IG_CANDLELIGHT_SCROLL,
	IG_LAPINE_SCROLL,
	IG_LI_LAPINE_DDUKDDAKBOX,
	IG_HAIR_BUN_BOX,
	IG_ROLL_TWIN_BOX,
	IG_LONG_PONY_BOX,
	IG_1LVUP,
	IG_10LVUP,
	IG_20LVUP,
	IG_30LVUP,
	IG_40LVUP,
	IG_50LVUP,
	IG_60LVUP,
	IG_70LVUP,
	IG_90LVUP,
	IG_175LVUP,
	IG_BISCUIT_STICK_2SET_,
	IG_LOVE_SCROLL,
	IG_LOVELY_EGG_BOX,
	IG_C_CATPAW_1DAY_PARA,
	IG_C_WING_OF_FLY_1DAY_PARA,
	IG_CAT_SCROLL,
	IG_MAGICAL_BOOSTER_BOX,
	IG_CAT_HEAD_DRESS_BASKET,
	IG_CHEMICALS_BAG,
	IG_SHADOW_SCROLL2,
	IG_C_WING_OF_FLY_3DAY_BOX_,
	IG_MOBILE_NOVICE_BOX,
	IG_C_WING_OF_FLY_5DAY_BOX_,
	IG_C_GIANT_FLY_1DAY_BOX_,
	IG_C_WING_OF_FLY_BOX_,
	IG_MAY_GOLD_SCROLL,
	IG_NEW_HAT_BOX3,
	IG_EXSHADOW_DDUKDDAKBOX,
	IG_MATERIAL_SHADOW_CUBE,
	IG_MYSTERIOUS_MEDAL_BOX,
	IG_VEND_ARBEIT1_1LV,
	IG_VEND_ARBEIT1_2LV,
	IG_VEND_ARBEIT1_3LV,
	IG_BUY_ARBEIT1_1LV,
	IG_BUY_ARBEIT1_2LV,
	IG_BUY_ARBEIT1_3LV,
	IG_VEND_ARBEIT3_1LV,
	IG_VEND_ARBEIT3_2LV,
	IG_VEND_ARBEIT3_3LV,
	IG_BUY_ARBEIT3_1LV,
	IG_BUY_ARBEIT3_2LV,
	IG_BUY_ARBEIT3_3LV,
	IG_CRYPTURA_GIFTBOX,
	IG_GENERAL_SCROLL,
	IG_GREEN_SCROLL_K2,
	IG_NEW_SHADOW_CUBE,
	IG_SENTIMENTAL_SCROLL,
	IG_JULY_HAIR_BOX,
	IG_INFINITY_SCROLL,
	IG_BLOODY_SCROLL,
	IG_SNOW_FESTA_BOX,
	IG_SNOW_FESTA_CARDPACK,
	IG_2017_SPECIAL_SCROLL,
	IG_2017_SPECIAL_BOX,
	IG_ICE_SCROLL,
	IG_2018_NEW_YEAR_SCROLL,
	IG_2018_YEAR_SHADOW_CUBE,
	IG_2018_MATERIAL_CUBE,
	IG_2018_LAPINE_DDUKDDAKBOX,
	IG_SWEETS_EVT_BOX,
	IG_EVT_JAN02KR,
	IG_2018_VISIONARY_CARD,
	IG_LUNAR_NEW_YEAR_SCROLL,
	IG_FEBRUARY_HAIR_BOX,
	IG_2018_SPRING_SCROLL,
	IG_2018_SAKURA_SCROLL,
	IG_SEALED_CARD2,
	IG_CELEBRATE_EGG,
	IG_NOODLE_FESTA_CAN,
	IG_COMP_AID_BUFF_BOX,
	IG_COMP_BOX,
	IG_COMP_ALL_RING_BOX,
	IG_MYSTERIOUS_EGG3,
	IG_COMP_BOX2,
	IG_MAY_RAINBOW_SCROLL,
	IG_SWEET_CANDY_BOX,
	IG_PUMP_OF_SPIRIT_SCROLL2,
	IG_SPIRIT_HAT_BOX,
	IG_HERO_WEAPON_BOX,
	IG_STARSOUL_SCROLL,
	IG_COMP_CONNECTERROR,
	IG_2018_JUMP_THX_BOX,
	IG_TIME_OVERLOAD_BOX,
	IG_110LVUP,
	IG_SEASON_EVT_REWARD_3,
	IG_SEASON_EVT_REWARD_4,
	IG_SEASON_EVT_REWARD_5,
	IG_JOB_ENCHANT_STONE_BOX,
	IG_MAIN_LUCKY_BOX,
	IG_SEASON_EVT_REWARD,
	IG_CANDY_BOX,
	IG_PORING_SUNGLASSES_BOX,
	IG_SIGRUN_SHADOW_BOX,
	IG_MAD_BUNNY_BOX,
	IG_LEVEL_ACHIEVEMENT_BOX,
	IG_ABYSS_ITEMBOX,
	IG_ODIN_ITEMBOX,
	IG_BIO_W_BOX,
	IG_BIO_DOCU_BOX,
	IG_BIO_REACTANT_BOX,
	IG_PAYPROMOTION_BOX,
	IG_E_BCRYSTAL_BOX,
	IG_E_MCRYSTAL_BOX,
	IG_E_SCRYSTAL_BOX,
	IG_BOOSTER_PACK_1,
	IG_BOOSTER_PACK_15,
	IG_BOOSTER_PACK_30,
	IG_BOOSTER_PACK_45,
	IG_BOOSTER_PACK_60,
	IG_BOOSTER_PACK_75,
	IG_BOOSTER_PACK_90,
	IG_BOOSTER_PACK_100,
	IG_BOOSTER_PACK_115,
	IG_BOOSTER_PACK_130,
	IG_BOOSTER_PACK_145,
	IG_BOOSTER_PACK_160,
	IG_BOOSTER_PACK_175,
	IG_STATER_A_BOX,
	IG_BOOST_ATK_BOX,
	IG_BOOST_RAN_BOX,
	IG_BOOST_ELE_BOX,
	IG_BOOST_DEFN_BOX,
	IG_GOAL_GIFT_BOX,
	IG_BOOSTER_PACK_PREORDER,
	IG_TIME_OVER_S_BOX,
	IG_BOARDING_HALTER_BOX30_Z,
	IG_TEMPORAL_MANTEAU_BOX,
	IG_LAPINE_DDUKDDAKBOX2,
	IG_KR_B_SPECIAL02,
	IG_GOLDPCBANG_SHIELDBOX,
	IG_SET_OF_TAIMING_ITEM2,
	IG_GOLDPCBANG_MILEAGEBOX,
	IG_SKILL_SHADOW_CUBE,
	IG_SHADOWDECON_ORE_BOX,
	IG_ZELUNIUM_ORE_BOX,
	IG_GSTAR2019BOX,
	IG_EXOTIC_BOB_BOX,
	IG_RUNEKNIGHT_S_CUBE,
	IG_GUILLOTINECROSS_S_CUBE,
	IG_ARCHBISHOP_S_CUBE,
	IG_SURA_S_CUBE,
	IG_2019_CHRISMAS_PRESENT,
	IG_BOOSTER_PACK_190,
	IG_BOOSTER_PACK_200,
	IG_2020_GOAL_GIFT_BOX,
	IG_RANGER_S_CUBE,
	IG_WARLOCK_S_CUBE,
	IG_SORCERER_S_CUBE,
	IG_WANDERMINS_S_CUBE,
	IG_ROYALGUARD_S_CUBE,
	IG_SHADOWCHASER_S_CUBE,
	IG_MECHANIC_S_CUBE,
	IG_GENETIC_S_CUBE,
	IG_SIGNON_PRIN_WAVE_BOX,
	IG_HERO_WEAPON_CUBE,
	IG_NEW_S_WEAPON_CUBE,
	IG_NEW_S_SHIELD_CUBE,
	IG_NEW_S_ARMOR_CUBE,
	IG_NEW_S_SHOES_CUBE,
	IG_NEW_S_EARRING_CUBE,
	IG_NEW_S_PENDANT_CUBE,
	IG_MD_AIRBOAT_REWARD,
	IG_OS_HELM_BOX,
	IG_FAMOUS_HAT_BOX,
	IG_POENETENTIA_BOX1,
	IG_POENETENTIA_BOX2,
	IG_EX_SKILL_SHADOW_CUBE,
	IG_CACHUA_COSTUME_BOX,
	IG_KR_B_SPECIAL03,
	IG_BIOWEAPON_HELM_BOX,
	IG_TREE_OF_SPROUT_BOX,
	IG_SPECIAL_COSTUME_BOX,
	IG_SPECIAL_COSTUME_BOX_,
	IG_RAG_INVEN_BOX,
	IG_THANATOS_PENDANT_BOX,
	IG_LAPINE_DDUKDDAKBOX3,
	IG_AUCTION_PROMOTION,
	IG_BLUE_PRINTS_SCROLL,
	IG_MATERIAL_SHADOW_CUBEII,
	IG_ANCIENT_HERO_WILL,
	IG_MAMMOTH_SHADOW_BOX,
	IG_SHADOW_R_M_BOX,
	IG_ALL_SHADOW_CUBE,
	IG_FLUFFY_SEMI_LONG_BOX,
	IG_BOOSTER_PACK_215,
	IG_BOOSTER_PACK_230,
	IG_ANGELPORINGJEWEL_BOX,
	IG_UP_HERO_WEAPON_BOX,
	IG_HIGH_REFINE_GUARANTEE,
	IG_REFINE_GUARANTEE,
	IG_SPECIAL_REFINE_CUBE,
	IG_AUTOSPELL_SHADOW_BOX,
	IG_BROADCASTBOX_,
	IG_S_ENCHANT_STONE_BOX,
	IG_C_GIANT_FLY_1DAY_BOX__,
	IG_C_WING_OF_FLY_3DAY_B__,
	IG_PHYMAG_SHADOW_BOX,
	IG_S_DUAL_STONE_BOX,
	IG_S_COSTUME_BOX,
	IG_GM_LOST_BAGPACK,
	IG_E_POTION_BOX,
	IG_BUFF_SCROLL_BOX,
	IG_SEASON_EVT_REWARD_9,
	IG_S_IGNITION_CUBE,
	IG_LI_HD_ORIDECON_BOX2,
	IG_LI_HD_ELUNIUM_BOX2,
	IG_LI_HD_BRADIUMBOX2,
	IG_LI_HD_CARNIUMBOX2,
	IG_LI_NYANGVINE_BOX100,
	IG_LI_A_3_POTION_PACK,
	IG_STONE_COIN_PACKAGEI,
	IG_STONE_COIN_PACKAGEII,
	IG_STONE_COIN_PACKAGEIII,
	IG_A_HD_ELUNIUM_BOX,
	IG_A_HD_ORIDECON_BOX,
	IG_A_HD_CARNIUM_BOX,
	IG_A_HD_BRADIUM_BOX,
	IG_L_BATTLE_MANUAL_PACK,
	IG_LI_MANA_POTION_BOX,
	IG_LI_NYANGVINE_BOX_II,
	IG_LI_NYANGVINE_BOX_III,
	IG_LI_HD_ORIDECON_BOX3,
	IG_LI_HD_ELUNIUM_BOX3,
	IG_LI_NYANGVINE_STONE_BOX,
	IG_LI_A_REFINE_ORE_BOX,
	IG_LI_A_HD_ELUNIUM_BOX,
	IG_LI_A_HD_ORIDECON_BOX,
	IG_LI_A_HD_CARNIUM_BOX,
	IG_LI_A_HD_BRADIUM_BOX,
	IG_THANOS_UPGRADE_PACKAGE,
	IG_HERO_UP_PACKAGE_1,
	IG_HERO_UP_PACKAGE_2,
	IG_HERO_HAMMER_PACKAGE_1,
	IG_HERO_HAMMER_PACKAGE_2,
	IG_HERO_UP_PACKAGE_3,
	IG_HERO_HAMMER_PACKAGE_3,
	IG_EXP_DROP_UP_BOX,
	IG_HERO_HAMMER_PACKAGE_4,
	IG_HERO_UP_PACKAGE_4,
	IG_LI_NYANGVINE_STONE_BOX2,
	IG_HERO_UP_PACKAGE_5,
	IG_COSTUMEMILEAGE_PACKAGE1,
	IG_COSTUMEMILEAGE_PACKAGE2,
	IG_COSTUMEMILEAGE_PACKAGE3,
	IG_COMP_TRANS_SCROLL,
	IG_MINUS_STATUS_BOX,
	IG_S_W_BREATH_CUBE,
	IG_S_F_BREATH_CUBE,
	IG_S_SONIC_CUBE,
	IG_S_STRAIN_CUBE,
	IG_S_JACK_CUBE,
	IG_S_CHAIN_CUBE,
	IG_S_CRIMSON_CUBE,
	IG_S_VULCAN_CUBE,
	IG_S_BOOMERANG_CUBE,
	IG_S_ARMS_CUBE,
	IG_S_TORNADO_CUBE,
	IG_S_DUPLELIGHT_CUBE,
	IG_S_MAGNUS_CUBE,
	IG_S_ADORAMUS_CUBE,
	IG_S_JUDEX_CUBE,
	IG_S_ROLLING_CUBE,
	IG_S_RIPPER_CUBE,
	IG_S_SLASH_CUBE,
	IG_S_KATAR_CUBE,
	IG_S_SHOOTING_CUBE,
	IG_S_ARROW_CUBE,
	IG_S_AIMED_CUBE,
	IG_S_CLUSTER_CUBE,
	IG_S_BANISH_CANNON_CUBE,
	IG_S_BRAND_CUBE,
	IG_S_GENESIS_CUBE,
	IG_S_CHAIN_PRESS_CUBE,
	IG_S_GRAVE_CUBE,
	IG_S_DUST_CUBE,
	IG_S_VARETYR_CUBE,
	IG_S_PSYCHIC_CUBE,
	IG_S_SPORE_BOMB_CUBE,
	IG_S_CANNON_CART_CUBE,
	IG_S_CRAZY_CUBE,
	IG_S_CART_TORNADO_CUBE,
	IG_S_KNUCKLEARROW_CUBE,
	IG_S_SKYNETBLOW_CUBE,
	IG_S_RAMPAGE_CUBE,
	IG_S_TIGERCANNON_CUBE,
	IG_S_MENACE_CUBE,
	IG_S_SHADOWSPELL_CUBE,
	IG_S_TRIANGLE_CUBE,
	IG_S_PAINT_CUBE,
	IG_S_RAINSTORM_CUBE,
	IG_S_METALIC_CUBE,
	IG_S_ARROWVULCAN_CUBE,
	IG_S_REVERBERATION_CUBE,
	IG_S_MOONLIGHT_CUBE,
	IG_S_SUNSHINE_CUBE,
	IG_S_STARDUST_CUBE,
	IG_S_S_CUBE,
	IG_S_EVILCURSE_CUBE,
	IG_S_SYURIKEN_CUBE,
	IG_S_KUNAI_CUBE,
	IG_S_HUUSOUKA_CUBE,
	IG_S_KAMAENRAKU_CUBE,
	IG_S_GOD_HAMMER_CUBE,
	IG_S_SHATTER_BUSTER_CUBE,
	IG_S_TAIL_DRAGON_CUBE,
	IG_S_TRIP_CUBE,
	IG_S_FLARE_DANCE_CUBE,
	IG_S_SUPER_MAGIC_CUBE,
	IG_S_SUPER_POWER_CUBE,
	IG_S_SILVERVINE_CUBE,
	IG_S_CATNIP_CUBE,
	IG_S_SAVAGERABBIT_CUBE,
	IG_S_PICKYRUSH_CUBE,
	IG_S_RUNEKNIGHT_CUBE,
	IG_S_ROYALGUARD_CUBE,
	IG_S_WARLOCK_CUBE,
	IG_S_SORCERER_CUBE,
	IG_S_MECHANIC_CUBE,
	IG_S_GENERIC_CUBE,
	IG_S_ARCHBISHOP_CUBE,
	IG_S_SURA_CUBE,
	IG_S_GUILLOTINECROSS_CUBE,
	IG_S_SHADOWCHASER_CUBE,
	IG_S_RANGER_CUBE,
	IG_S_WANDERER_CUBE,
	IG_S_MINSTREL_CUBE,
	IG_S_STAR_EMPEROR_CUBE,
	IG_S_SOUL_REAPER_CUBE,
	IG_S_KAGEROU_CUBE,
	IG_S_OBORO_CUBE,
	IG_S_REBELLION_CUBE,
	IG_S_SUPERNOVICE_CUBE,
	IG_S_DORAM_CUBE,
	IG_S_MAMMOTH_CUBE,
	IG_S_GEMSTONE_CUBE,
	IG_S_PENE1_CUBE,
	IG_S_PENE2_CUBE,
	IG_S_TEMP1_CUBE,
	IG_S_TEMP2_CUBE,
	IG_BLACKSMITH_BLESS_BOX_3,
	IG_SHADOW_HAMMER_BOX_3,
	IG_EDP,
	IG_MF_NOTELEPORT,
	IG_MF_NORETURN,
	IG_GIANT_FLY_WING,
	IG_CLASS_SHADOW_WP_CUBE,
	IG_CLASS_SHADOW_AM_CUBE,
	IG_CLASS_SHADOW_SU_CUBE,
	IG_CLASS_SHADOW_SD_CUBE,
	IG_CLASS_SHADOW_PD_CUBE,
	IG_CLASS_SHADOW_EA_CUBE,
	IG_ENCHANT_STONE_BOX30,
	IG_ENCHANT_STONE_BOX31,
	IG_ENCHANT_STONE_BOX32,
	IG_ANCIENT_HERO_BOX_2,
	IG_ANCIENT_HERO_BOX_3,
	IG_INTAKE_HAIR_BOX,
	IG_PONYTAIL_HAIR_BOX,
	IG_ALCHEMIST_BOX,
	IG_GIANT_FLY_WING_2500,
	IG_C_GIANT_FLY_WING_BOX,
	IG_C_SIEGE_SCROLL_BOX1_10,
	IG_C_SIEGE_SCROLL_BOX2_30,
	IG_A_3_LIFE_POTION_10PACK,
	IG_A_3_LIFE_POTION_PACK,
	IG_A_INFINITY_10_BOX,
	IG_A_INFINITY_BOX,
	IG_C_ACID_B_50BOX,
	IG_C_ACID_B_500_BOX,
	IG_FIRST_AID_KIT_B,
	IG_BOARDING_HALTER_BOX7,
	IG_COSTAMA_EGG21,
	IG_CRYSTAL_OF_GRUDGE,
	IG_WING_OF_BAALZEBUB_BOX,
	IG_POROROCA_SHOES_BUNDLE_A,
	IG_LIAN_BUNDLE_B,
	IG_SPRINT_BUNDLE_A,
	IG_ETRAN_BUNDLE_A,
	IG_ROSE_BUNDLE_A,
	IG_ORLEANS_BUNDLE_A,
	IG_BLACK_SHIBA_BUNDLE_A,
	IG_VALKYRIE_BUNDLE_A,
	IG_KARDUI_BUNDLE_A,
	IG_CLOSEDMIND_BOX,
	IG_COOKIE_BAG_B,
	IG_SHADOW_BOX2,
	IG_SHADOW_BOX,
	IG_PHYSICAL_S_PACKAGE,
	IG_MAGICAL_S_PACKAGE,
	IG_POWER_BOX2,
	IG_POWER_BOX1,
	IG_MAIL_BREAKER_BOX1,
	IG_HARDBACK_BOX1,
	IG_SWORD_BREAKER_BOX1,
	IG_BOW_OF_RUDRA_BOX1,
	IG_BLOODY_ROAR_BOX1,
	IG_BLOODY_IRON_BALL_BOX1,
	IG_SIEGE_SUPPLY_BOX,
	IG_PC_BANG_COIN_BOX1,
	IG_ACIDBOMB_BOX50,
	IG_PC_BANG_COIN_BOX2,
	IG_PC_BANG_COIN_BOX4,
	IG_FOOD_BOX_LV1,
	IG_FOOD_BOX_LV2,
	IG_FOOD_BOX_LV3,
	IG_TRIAL_BOX,
	IG_REPAIR_SCROLL_BOX10,
	IG_HOCKEY_MASK_BOX,
	IG_CLOCK_TOWER_CARD_BOX,
	IG_GEFFENIA_CARD_BOX,
	IG_OWL_CARD_BOX,
	IG_GHOST_CARD_BOX,
	IG_NIGHTMARE_CARD_BOX,
	IG_STARTER_PACK,
	IG_LOVE_ANGEL_BOX,
	IG_SQUIRREL_BOX,
	IG_GOGO_BOX,
	IG_CRUSADER_CARD_BOX,
	IG_ALCHEMIST_CARD_BOX,
	IG_ROGUE_CARD_BOX,
	IG_BARD_DANCER_CARD_BOX,
	IG_SAGE_CARD_BOX,
	IG_MONK_CARD_BOX,
	IG_TW_VALENTINE_SCROLL,
	IG_LOVE_ANGEL_BOX_1M,
	IG_SQUIRREL_BOX_1M,
	IG_GOGO_BOX_1M,
	IG_WASTELAND_OUTLAW_BOX,
	IG_LEVER_ACTION_RIFLE_BOX,
	IG_SPIRITUAL_TUNIC_BOX,
	IG_RECUPERATIVE_ARMOR_BOX,
	IG_SHELTER_RESISTANCE_BOX,
	IG_SYLPHID_MANTEAU_BOX,
	IG_REFRESH_SHOES_BOX,
	IG_TOAST_BOX,
	IG_BUBBLEGUM_LOWER_BOX,
	IG_TW_SCROLL01,
	IG_PICTURE_DIARY_BOX,
	IG_MINI_HEART_BOX,
	IG_NEWCOMER_BOX,
	IG_KID_BOX,
	IG_MAGIC_CASTLE_BOX,
	IG_BULGING_HEAD_BOX,
	IG_PICTURE_DIARY_BOX_1M,
	IG_MINI_HEART_BOX_1M,
	IG_NEWCOMER_BOX_1M,
	IG_KID_BOX_1M,
	IG_MAGIC_CASTLE_BOX_1M,
	IG_BULGING_HEAD_BOX_1M,
	IG_F_LOVE_ANGEL_BOX,
	IG_F_SQUIRREL_BOX,
	IG_F_GOGO_BOX,
	IG_F_LOVE_ANGEL_BOX_1M,
	IG_F_SQUIRREL_BOX_1M,
	IG_F_GOGO_BOX_1M,
	IG_F_WASTELAND_OUTLAW_BOX,
	IG_F_ALL_IN_ONE_RING_BOX,
	IG_F_SPRITUAL_TUNIC_BOX,
	IG_F_RECUPERATIVE_BOX,
	IG_F_SHELTER_RESIST_BOX,
	IG_F_SYLPHID_MANTEAU_BOX,
	IG_F_TOAST_BOX,
	IG_F_REPAIR_SCROLL_BOX,
	IG_F_REPAIR_SCROLL_BOX10,
	IG_F_HOCKEY_MASK_BOX,
	IG_F_OBSERVER_BOX,
	IG_F_NAGAN_BOX,
	IG_F_SKEWER_BOX,
	IG_F_SURVIVAL_ROD_BOX,
	IG_F_QUADRILLE_BOX,
	IG_F_GREAT_AXE_BOX,
	IG_F_BLOODY_ROAR_BOX,
	IG_F_HARDBACK_BOX,
	IG_F_FIRE_BRAND_BOX,
	IG_F_IMMATERIAL_SWORD_BOX,
	IG_F_UNHOLY_TOUCH_BOX,
	IG_F_CLACK_OF_SERVIVAL_BOX,
	IG_F_MASQUERADE_BOX,
	IG_F_ORC_HERO_HELM_BOX,
	IG_F_EAR_OF_DEVIL_WING_BOX,
	IG_F_DARK_BLINDFOLD_BOX,
	IG_F_K_DROOPING_KITTY_BOX,
	IG_F_CORSAIR_BOX,
	IG_F_BLOODY_IRON_BALL_BOX,
	IG_F_SPIRITUAL_RING_BOX,
	IG_F_INFILTRATOR_BOX,
	IG_F_MURAMASA_BOX,
	IG_F_EXCALIBUR_BOX,
	IG_F_COMBAT_KNIFE_BOX,
	IG_F_COUNTER_DAGGER_BOX,
	IG_F_KAISER_KNUCKLE_BOX,
	IG_F_MIGHTY_STAFF_BOX,
	IG_F_RIGHT_EPSILON_BOX,
	IG_F_BALISTAR_BOX,
	IG_F_DIARY_OF_GREAT_SAGE,
	IG_F_ASURA_BOX,
	IG_F_APPLE_OF_ARCHER_BOX,
	IG_F_BUNNY_BAND_BOX,
	IG_F_SAHKKAT_BOX,
	IG_F_LORD_CIRCLET_BOX,
	IG_F_ELVEN_EARS_BOX,
	IG_F_STEEL_FLOWER_BOX,
	IG_F_CRITICAL_RING_BOX,
	IG_F_EARRING_BOX,
	IG_F_RING_BOX,
	IG_F_NECKLACE_BOX,
	IG_F_GLOVE_BOX,
	IG_F_BROOCH_BOX,
	IG_F_ROSARY_BOX,
	IG_F_SAFETY_RING_BOX,
	IG_F_VESPER_CORE_BOX01,
	IG_F_VESPER_CORE_BOX02,
	IG_F_VESPER_CORE_BOX03,
	IG_F_VESPER_CORE_BOX04,
	IG_F_VIGORGRA_PACKAGE1,
	IG_F_VIGORGRA_PACKAGE2,
	IG_F_VIGORGRA_PACKAGE5,
	IG_F_VIGORGRA_PACKAGE6,
	IG_F_VIGORGRA_PACKAGE7,
	IG_F_VIGORGRA_PACKAGE8,
	IG_F_VIGORGRA_PACKAGE9,
	IG_F_VIGORGRA_PACKAGE10,
	IG_F_VIGORGRA_PACKAGE11,
	IG_F_VIGORGRA_PACKAGE12,
	IG_F_ASPERSIO_5_SCROLL_BOX,
	IG_F_ASPERSIO_5_BOX30,
	IG_F_ASPERSIO_5_BOX50,
	IG_HEALING_STAFF_BOX,
	IG_PRAXINUS_BOX,
	IG_F_PET_EGG_SCROLL9,
	IG_F_MAGESTIC_GOAT_BOX,
	IG_F_PET_EGG_SCROLL3,
	IG_F_EXECUTIONER_BOX,
	IG_F_CUTLAS_BOX,
	IG_F_MOONLIGHT_SWORD_BOX,
	IG_F_SPANNER_BOX,
	IG_F_SOLAR_SWORD_BOX,
	IG_F_TOMAHAWK_BOX,
	IG_F_BOW_OF_RUDRA_BOX,
	IG_F_POLE_AXE_BOX,
	IG_THOUGHTFUL_HAT_BOX,
	IG_F_THOUGHTFUL_HAT_BOX,
	IG_E_THOUGHTFUL_HAT_BOX,
	IG_ZODIAC_DIADEM_PACK,
	IG_ZODIAC_CROWN_PACK,
	IG_DUN_VOUCHER_BOX1,
	IG_DUN_VOUCHER_BOX2,
	IG_BLUEBOXOFQUESTIONS,
	IG_ENCHANT_STONE_BOX33,
	IG_PC_BANG_COIN_BOX3,
	IG_PCBANG_GIFT_BOX,
	IG_PCBANG_COUPON_BOX2,
	IG_PCBANG_COUPON_BOX3,
	IG_CHANCE_BOX,
	IG_ATTEND_3DAY_BOX,
	IG_ATTEND_7DAY_BOX,
	IG_ATTEND_10DAY_BOX,
	IG_ATTEND_15DAY_BOX,
	IG_ATTEND_20DAY_BOX,
	IG_ATTEND_25DAY_BOX,
	IG_GOLDPC_FIRST_BOX,
	IG_TICKET_GIFT_BOX,
	IG_TICKET_GIFT_BOX2,
	IG_ASSORTED_SCROLL_BOX,
	IG_DROOPING_KITTY_BOX,
	IG_MAGESTIC_GOAT_BOX,
	IG_DEVIRUCHI_CAP_BOX,
	IG_EXECUTIONER_BOX,
	IG_BROOD_AXE_BOX,
	IG_TOMAHAWK_BOX,
	IG_BOW_OF_RUDRA_BOX,
	IG_CUTLAS_BOX,
	IG_SOLAR_SWORD_BOX,
	IG_SWORD_BREAKER_BOX,
	IG_MAIL_BREAKER_BOX,
	IG_MOONLIGHT_SWORD_BOX,
	IG_SPANNER_BOX,
	IG_WEAPON_CARD_SCROLL,
	IG_ARMOR_CARD_SCROLL,
	IG_HELMET_CARD_SCROLL,
	IG_HOOD_CARD_SCROLL,
	IG_HOOD_CARD_SCROLL2,
	IG_SHOES_CARD_SCROLL,
	IG_ACCY_CARD_SCROLL,
	IG_WEAPON_CARD_SCROLL2,
	IG_WEAPON_CARD_SCROLL3,
	IG_ARMOR_CARD_SCROLL2,
	IG_ACCY_CARD_SCROLL2,
	IG_ASPERSIO_5_BOX30,
	IG_ASPERSIO_5_BOX50,
	IG_HANDCUFF_BOX,
	IG_INFILTRATOR_BOX1,
	IG_MURAMASA_BOX1,
	IG_EXCALIBUR_BOX1,
	IG_COMBAT_KNIFE_BOX1,
	IG_COUNTER_DAGGER_BOX1,
	IG_KAISER_KNUCKLE_BOX1,
	IG_POLE_AXE_BOX1,
	IG_MIGHTY_STAFF_BOX1,
	IG_RIGHT_EPSILON_BOX1,
	IG_BALISTAR_BOX1,
	IG_DIARY_OF_SAGE_BOX1,
	IG_ASURA_BOX1,
	IG_APPLE_OF_ARCHER_BOX1,
	IG_BUNNY_BAND_BOX1,
	IG_SAHKKAT_BOX1,
	IG_LORD_CIRCLET_BOX1,
	IG_ELVEN_EARS_BOX1,
	IG_STEEL_FLOWER_BOX1,
	IG_CRITICAL_RING_BOX1,
	IG_EARRING_BOX1,
	IG_RING_BOX1,
	IG_NECKLACE_BOX1,
	IG_GLOVE_BOX1,
	IG_BROOCH_BOX1,
	IG_ROSARY_BOX1,
	IG_SAFETY_RING_BOX1,
	IG_VESPER_CORE01_BOX1,
	IG_VESPER_CORE02_BOX1,
	IG_VESPER_CORE03_BOX1,
	IG_VESPER_CORE04_BOX1,
	IG_DROOPING_KITTY_BOX1,
	IG_MAGESTIC_GOAT_BOX1,
	IG_DEVIRUCHI_CAP_BOX1,
	IG_EXECUTIONER_BOX1,
	IG_BROOD_AXE_BOX1,
	IG_TOMAHAWK_BOX1,
	IG_CUTLAS_BOX1,
	IG_SOLAR_SWORD_BOX1,
	IG_MOONLIGHT_SWORD_BOX1,
	IG_SPANNER_BOX1,
	IG_FREYJA_OVERCOAT_BOX,
	IG_FREYJA_BOOTS_BOX,
	IG_FREYJA_CAPE_BOX,
	IG_FREYJA_CROWN_BOX,
	IG_BRO_PACKAGE1,
	IG_PECOPECO_HAIRBAND_BOX,
	IG_RED_GLASSES_BOX,
	IG_WHISPER_MASK_BOX,
	IG_GOLD_BOX_,
	IG_SILVER_BOX_,
	IG_PECOPECO_HAIRBAND_BOX1,
	IG_RED_GLASSES_BOX1,
	IG_WHISPER_MASK_BOX1,
	IG_RAMEN_HAT_BOX1,
	IG_5_ANNIVERSARY_COIN_BOX,
	IG_CERTIFICATE_TW_BOX,
	IG_NAGAN_BOX,
	IG_SKEWER_BOX,
	IG_SURVIVAL_ROD_BOX,
	IG_QUADRILLE_BOX,
	IG_GREAT_AXE_BOX,
	IG_BLOODY_ROAR_BOX,
	IG_HARDBACK_BOX,
	IG_IMMATERIAL_SWORD_BOX,
	IG_UNHOLY_TOUCH_BOX,
	IG_CLOAK_OF_SURVIVAL_BOX,
	IG_MASQUERADE_BOX,
	IG_ORC_HERO_HELM_BOX,
	IG_EVIL_WING_EARS_BOX,
	IG_DARK_BLINDFOLD_BOX,
	IG_KRO_DROOPING_KITTY_BOX,
	IG_CORSAIR_BOX,
	IG_BLOODY_IRON_BALL_BOX,
	IG_SPIRITUAL_RING_BOX,
	IG_NAGAN_BOX1,
	IG_SKEWER_BOX1,
	IG_SURVIVAL_ROD_BOX1,
	IG_QUADRILLE_BOX1,
	IG_GREAT_AXE_BOX1,
	IG_FIRE_BRAND_BOX1,
	IG_IMMATERIAL_SWORD_BOX1,
	IG_UNHOLY_TOUCH_BOX1,
	IG_CLOAK_OF_SURVIVAL_BOX1,
	IG_MASQUERADE_BOX1,
	IG_ORC_HERO_HELM_BOX1,
	IG_EVIL_WING_EARS_BOX1,
	IG_DARK_BLINDFOLD_BOX1,
	IG_KRO_DROOPING_KITTY_BOX1,
	IG_CORSAIR_BOX1,
	IG_SPIRITUAL_RING_BOX1,
	IG_INDONESIA_BOX,
	IG_GREEN_BOX_,
	IG_RESIST_BOX1,
	IG_RESIST_BOX2,
	IG_STAT_BOOST1,
	IG_STAT_BOOST2,
	IG_STAT_BOOST3,
	IG_STAT_BOOST4,
	IG_OBSERVER_BOX,
	IG_LUCKY_CLIP_BOX,
	IG_F_LEVER_ACTION_RIFLE_BO,
	IG_F_REFRESH_SHOES_BOX,
	IG_F_PECOPECO_HAIRBAND_BOX,
	IG_F_RED_GLASSES_BOX,
	IG_F_WHISPER_MASK_BOX,
	IG_F_RAMEN_HAT_BOX,
	IG_F_VIGORGRA_PACKAGE3,
	IG_F_VIGORGRA_PACKAGE4,
	IG_NOVICE_SET_BOX,
	IG_BEHOLDER_RING_BOX2,
	IG_HALLOW_RING_BOX2,
	IG_CLAMOROUS_RING_BOX2,
	IG_CHEMICAL_RING_BOX2,
	IG_INSECTICIDE_RING_BOX2,
	IG_FISHER_RING_BOX2,
	IG_DECUSSATE_RING_BOX2,
	IG_BLOODY_RING_BOX2,
	IG_SATANIC_RING_BOX2,
	IG_DRAGOON_RING_BOX2,
	IG_FPICTURE_DIARY_BOX,
	IG_FMINI_HEART_BOX,
	IG_FNEWCOMER_BOX,
	IG_FKID_BOX,
	IG_FMAGIC_CASTLE_BOX,
	IG_FBULGING_HEAD_BOX,
	IG_FPICTURE_DIARY_BOX_1M,
	IG_FMINI_HEART_BOX_1M,
	IG_FNEWCOMER_BOX_1M,
	IG_FKID_BOX_1M,
	IG_FMAGIC_CASTLE_BOX_1M,
	IG_FBULGING_HEAD_BOX_1M,
	IG_FHEALING_STAFF_BOX,
	IG_FPRAXINUS_BOX,
	IG_MUFFLER_C_BOX,
	IG_VALKYRJA_S_SHIELD_C_BOX,
	IG_SKUL_RING_C_BOX,
	IG_S_BARRICADE_REPAIR_KIT,
	IG_S_GSTONE_REPAIR_KIT,
	IG_ARDOR_SCROLL,
	IG_HOLY_SABER_BOX,
	IG_BOOK_OF_PRAYER_BOX,
	IG_PHENOMENA_WHIP_BOX,
	IG_STAFF_OF_DARKNESS_BOX,
	IG_MONK_KNUCKLE_BOX,
	IG_MACE_OF_MADNESS_BOX,
	IG_SPEAR_OF_EXCELLENT_BOX,
	IG_BOW_OF_EVIL_BOX,
	IG_KATAR_OF_SPEED_BOX,
	IG_SS_REVOLVER_BOX,
	IG_XMAS_SCROLL,
	IG_FORTUNE_SWORD_BOX_I,
	IG_HOUSE_AUGER_BOX_I,
	IG_KAMAITACHI_BOX_I,
	IG_BERSERK_GUITAR_BOX_I,
	IG_DOOM_SLAYER_BOX_I,
	IG_HUUMA_BLAZE_BOX_I,
	IG_ODIN_S_BLESSING_BOX_I,
	IG_RING_OF_F_LORD_BOX_I,
	IG_RING_OF_RESON_BOX_I,
	IG_BOY_S_CAP_BOX_I,
	IG_ULLE_CAP_BOX_I,
	IG_SPINX_HELM_BOX_I,
	IG_POWER_OF_THOR_BOX,
	IG_ACTI_POTION_BOX,
	IG_ACTI_POTION_BOX2,
	IG_HALF_ASPRIKA_BOX,
	IG_HALF_BRYNHILD_BOX,
	IG_SPIKED_SCARF_BOX,
	IG_RAINBOW_SCARF_BOX,
	IG_3D_GLASSES_BOX,
	IG_CHEER_SCARF_BOX,
	IG_CHEER_SCARF2_BOX,
	IG_CHEER_SCARF3_BOX,
	IG_CHEER_SCARF4_BOX,
	IG_CHEER_SCARF6_BOX,
	IG_CHEER_SCARF8_BOX,
	IG_CHEER_SCARF10_BOX,
	IG_CHEER_SCARF10_BOX2,
	IG_RING_OF_VALKYRIE_BOX,
	IG_RAPID_LIFE_WATER_BOX,
	IG_LOLLI_POP_BOX,
	IG_SPECIAL_BOX1,
	IG_SPECIAL_BOX2,
	IG_SPECIAL_BOX3,
	IG_SPECIAL_BOX4,
	IG_SPECIAL_BOX5,
	IG_PCBANG_COUPON_BOX,
	IG_B_HALTER_BOX_30DAYS,
	IG_PCBANG_COUPON_BOX4,
	IG_OLD_HAT_BOX,
	IG_SAPA_FEAT_CERT_PACK,
	IG_ARCHANGEL_WING_BOX,
	IG_TRANS_BOX_DEVI,
	IG_TRANS_BOX_RAY_ARCH,
	IG_TRANS_BOX_MAVKA,
	IG_TRANS_BOX_MARDUK,
	IG_TRANS_BOX_BANSHEE,
	IG_TRANS_BOX_GOLEM,
	IG_UPG_REVOLVER_BOX2,
	IG_UPG_TWOHAND_SWORD_BOX2,
	IG_UPG_KATAR_BOX2,
	IG_UPG_TWO_HANDED_AXE_BOX2,
	IG_UPG_LANCE_BOX2,
	IG_UPG_BOOK_BOX2,
	IG_UPG_STAFF_BOX2,
	IG_UPG_DAGGER_BOX2,
	IG_UPG_MACE_BOX2,
	IG_UPG_BOW_BOX2,
	IG_GRYPHON_EGG_SCROLL,
	IG_ASPD_POTION_BOX10,
	IG_DRAGON_EGG_SCROLL,
	IG_2011_RWC_SCROLL_KR,
	IG_CHANGE_NAME_CARD_BOX2,
	IG_PCBANG_COUPON_BOX5,
	IG_CRU_SCROLL,
	IG_EVENT_GIFT_BOX,
	IG_EVENT_GIFT_BOX_,
	IG_TIME_GUARDIAN_BOX,
	IG_BEGINNER_KIT_BOX,
	IG_MOTHER_LOVE_BOX,
	IG_OLD_ORE_BOX_,
	IG_BOARDING_HALTER_BOX3,
	IG_UNDEAD_EGG,
	IG_GIRLS_HEART,
	IG_C_CENTER_POT_BOX,
	IG_C_AWAKENING_POT_BOX,
	IG_C_BERSERK_POT_BOX,
	IG_C_WING_OF_FLY_BOX,
	IG_REFINE_ORE_BOX3,
	IG_GUARANTEE7_BOX,
	IG_WOLFKING_SCROLL,
	IG_ALMIGHTY_BOX2,
	IG_HD_ELUNIUM_BOX30,
	IG_HD_ORIDECON_BOX30,
	IG_KINGS_GIFT,
	IG_C_CENTER_POT_3D_BOX,
	IG_C_AWAKENING_POT_3D_BOX,
	IG_C_BERSERK_POT_3D_BOX,
	IG_BM_LIMIT_PACK,
	IG_GOLDENTREASUREBOX,
	IG_UNLIMITED_10_BOX,
	IG_XMAX_EGG_KR,
	IG_C_FESTIVAL_TICKET,
	IG_REFINE_ORE_BOX4,
	IG_REFINE_ORE_BOX4_SET10,
	IG_REFINE_ORE_BOX4_SET20,
	IG_NEW_YEAR_GIFT_BOX,
	IG_PCBANG_COUPON_BOX6,
	IG_SEALED_D_LORD_SCROLL,
	IG_STEALFIGHTER_20LV,
	IG_STEALFIGHTER_25LV,
	IG_KINGS_GIFT2,
	IG_HAPPY_CALL_BOX,
	IG_SEALED_KNIGHT_WS_SCROLL,
	IG_C_WING_OF_FLY_1DAY_BOX,
	IG_SILVERVINE_BOX10_,
	IG_SILVERVINE_BOX110,
	IG_SEALED_BERZ_SCROLL,
	IG_3_LIFE_POTION_PACK,
	IG_3_LIFE_POTION_10PACK,
	IG_CLEARBOX_S,
	IG_SEALED_KIEL_SCROLL,
	IG_SEALED_GLOOM_SCROLL,
	IG_REFINE_ORE_BOX5,
	IG_REFINE_ORE_BOX5_SET10,
	IG_ANGELING_PACKAGE,
	IG_DEVILING_PACKAGE,
	IG_OLD_HAT_BOX_,
	IG_MEMORIAL_BOX,
	IG_WET_CARDALBUM,
	IG_GOLDEN_CARD,
	IG_SHADOW_BOX3,
	IG_11TH_S_PACKAGE,
	IG_SILVERVINE_BOX10_2,
	IG_SILVERVINE_BOX110_2,
	IG_GEMSTONE_SHADOW_BOX,
	IG_SEALED_F_BISHOP_SCROLL,
	IG_HANGULDAY_BOX,
	IG_3_LIFE_POTION_PACK2,
	IG_3_LIFE_POTION_10PACK2,
	IG_SEALED_IFRIT_SCROLL,
	IG_BISCUIT_STICK_SET,
	IG_PREMIUM_BOOK_BOX,
	IG_LI_EMPELIUM_BOX,
	IG_LI_UPG_BUCKLER_BOX,
	IG_REFINE_ORE_BOX6,
	IG_REFINE_ORE_BOX6_SET10,
	IG_SEALED_TURTLEG_SCROLL,
	IG_SEALED_BACSOJIN_SCROLL,
	IG_GREED_SHADOW_BOX,
	IG_HEAL_SHADOW_BOX,
	IG_HIDING_SHADOW_BOX,
	IG_CLOAKING_SHADOW_BOX,
	IG_COSTUME_FESTIVAL_BOX2,
	IG_C_WING_OF_FLY_5DAY_BOX,
	IG_TELEPORT_SHADOW_BOX,
	IG_STEAL_SHADOW_BOX,
	IG_SEALED_PHARAOH_SCROLL,
	IG_QUESTION_BOX,
	IG_SEALED_M_FLOWER_SCROLL,
	IG_SEALED_B_YGNIZEM_SCROLL,
	IG_REFINE_ORE_BOX7,
	IG_REFINE_ORE_BOX7_SET10,
	IG_SEALED_APO_H_SCROLL,
	IG_PC_NOMALBOX,
	IG_PC_WOODENBOX,
	IG_PC_GOLDENBOX,
	IG_PC_PLATINUMBOX,
	IG_3_LIFE_POTION_PACK4,
	IG_3_LIFE_POTION_10PACK4,
	IG_SEALED_DRACULA_SCROLL,
	IG_BEARERS_SHADOW_BOX,
	IG_VIGORGRA_PACKAGE_V4,
	IG_VIGORGRA_PACKAGE_SET_V4,
	IG_SEALED_B_SHECIL_SCROLL,
	IG_NYANGVINE_BOX4,
	IG_NYANGVINE_BOX10,
	IG_NYANGVINE_BOX40,
	IG_REFINE_ORE_BOX8,
	IG_REFINE_ORE_BOX8_SET10,
	IG_SEALED_CARD,
	IG_LI_HD_ELUNIUM_BOX30,
	IG_LI_HD_ORIDECON_BOX30,
	IG_UNLIMITED_BOX3,
	IG_UNLIMITED_10_BOX3,
	IG_GUARANTEE_RELAX_SCROLL,
	IG_LIMIT_MANUAL_BOX,
	IG_SEALED_DRACULA_SCROLL2,
	IG_3_LIFE_POTION_10PACK5,
	IG_3_LIFE_POTION_PACK5,
	IG_SEALED_MYSTERIOUS_EGG,
	IG_SEALED_DRACULA_ALBUM,
	IG_LIMIT_POWER_BOOSTER_BOX,
	IG_LIMIT_POWER_BOOSTER100,
	IG_SEALED_BERZ_ALBUM,
	IG_SEALED_BERZ_SCROLL2,
	IG_NYANGVINE_BOX200,
	IG_APRILGIFTBOX,
	IG_NOVEMBERGIFTBOX,
	IG_SEPTEMBERGIFTBOX,
	IG_REFINE_ORE_BOX9,
	IG_REFINE_ORE_BOX9_SET10,
	IG_2015_NEW_YEAR_SCROLL,
	IG_NEW_YEAR_SHADOW_CUBE,
	IG_2015GOLDPCBOX,
	IG_ALMIGHTY_BOX4,
	IG_ALMIGHTY100_BOX2,
	IG_SEALED_SCROLL2,
	IG_INVISIBLE_BOX,
	IG_FREEZE_DREAM,
	IG_LAPINE_DDUKDDAKBOX,
	IG_GUNSLINGER_BOX,
	IG_MINI_FAN_BOX,
	IG_KAFRA_BOX,
	IG_CANDY_BOX_MELEE,
	IG_CANDY_BOX_RANGE,
	IG_CANDY_BOX_MAGIC,
	IG_BLOODYKNIGHT_SHIELD_BOX,
	IG_E_WING_OF_FLY_3DAY_BOX,
	IG_REBEGINER_BOX,
	IG_REBEGINER_S_BOX,
	IG_OVERWHELM_ARMOR_BOX,
	IG_POWERFUL_HELM_BOX,
	IG_MYSTERIOUS_PLASTIC,
	IG_80LVUP,
	IG_JUMPING_KIT_BOX,
	IG_MAIN_LUCKY_BOX_,
	IG_SILLIT_PONG_BOX,
	IG_KUNAI_SCROLL_OF_FLAME,
	IG_KUNAI_SCROLL_OF_ICICLE,
	IG_KUNAI_SCROLL_OF_POISON,
	IG_KUNAI_SCROLL_OF_SOIL,
	IG_KUNAI_SCROLL_OF_WIND,
	IG_C_CATPAW_7DAY_BOX_,
	IG_CANNON_BALL_BOX,
	IG_IRON_CANNON_BALL_BOX,
	IG_SOUL_CANNON_BALL_BOX,
	IG_DARK_CANNON_BALL_BOX,
	IG_HOLY_CANNON_BALL_BOX,
	IG_CANNON_BOX_6,
	IG_MAGIC_GEAR_FUEL_BOX,
	IG_REPAIRA_BOX,
	IG_REPAIRB_BOX,
	IG_REPAIRC_BOX,
	IG_FLAME_STONE_BUNDLE,
	IG_ICE_STONE_BUNDLE,
	IG_WIND_STONE_BUNDLE,
	IG_SHADOW_ORB_BUNDLE,
	IG_CHARM_FIRE_BUNDLE,
	IG_CHARM_ICE_BUNDLE,
	IG_CHARM_WIND_BUNDLE,
	IG_CHARM_EARTH_BUNDLE,
	IG_KUNAI_SCROLL_EXPLOSIVE,
	IG_GEMSTONE_BLUE,
	IG_GEMSTONE_YL,
	IG_GEMSTONE_RED,
	IG_BULLET_CASE_FULL,
	IG_BULLET_CASE_MINE,
	IG_BULLET_CASE_TAIL,
	IG_C_BRAID_HALF_UP_BOX,
	IG_POENETENTIA_BOX3,
	IG_POENETENTIA_BOX4,
	IG_CHUSEOG_PRESENT_BOX,
	IG_LI_NYANGVINE_BOX100_2,
	IG_BARMUND_RUNE_BOX,
	IG_SEALED_CARD3,
	IG_LI_NYANGVINE_STONE_BOX3,
	IG_RO_LIVE_SHOP_BOX,
	IG_RO_LIVE_SHOP_EX_BOX,
	IG_SEASON_EVT_REWARD_11,
	IG_CANNON_BOX_ICE,
	IG_CANNON_BOX_LIGHTNING,
	IG_CANNON_BOX_STONE,
	IG_CANNON_BOX_FLARE,
	IG_CANNON_BOX_POISONING,
	IG_KUNAI_SCROLL,
	IG_KUNAI_SCROLL_NOTHING,
	IG_KUNAI_SCROLL_SHADOW,
	IG_KUNAI_SCROLL_HAMAYA,
	IG_NW_GRENADE_BOX,
	IG_SOA_CHARM_BUNDLE,
	IG_SS_CHARM_BOX,
	IG_SS_CHARM_F_BOX,
	IG_SS_CHARM_W_BOX,
	IG_SS_CHARM_G_BOX,
	IG_SS_CHARM_L_BOX,
	IG_PAYMENT_COSTUME_BOX1,
	IG_PAYMENT_COSTUME_BOX2,
	IG_2021_PROMO_PACKAGE_1,
	IG_2021_PROMO_PACKAGE_2,
	IG_E_BOARDING_HALTER_BOX,
	IG_COSTUMEMILEAGE_PACKAGE4,
	IG_COSTUMEMILEAGE_PACKAGE5,
	IG_COSTUMEMILEAGE_PACKAGE6,
	IG_EVT_RAGFES_BOX,
	IG_KR_B_SPECIAL08,
	IG_KR_B_SPECIAL05,
	IG_SEASON_EVT_REWARD_12,
	IG_SECURITY_CAMPAIGN_BOX,
	IG_HERO_HAMMER_PACKAGE_6,
	IG_HERO_UP_PACKAGE_6,
	IG_HERO_TOKEN_BOX,
	IG_JANUARYGIFTBOX_,
	IG_FEBRUARYGIFTBOX_,
	IG_MARCHGIFTBOX_,
	IG_APRILGIFTBOX_,
	IG_MAYGIFTBOX_,
	IG_JUNEGIFTBOX_,
	IG_JULYGIFTBOX_,
	IG_AUGUSTGIFTBOX_,
	IG_SEPTEMBERGIFTBOX_,
	IG_OCTOBERGIFTBOX_,
	IG_NOVEMBERGIFTBOX_,
	IG_DECEMBERGIFTBOX_,
	IG_SEASON_EVT_REWARD_1,
	IG_2021_WINTER_EVENT_BOX1,
	IG_2021_WINTER_EVENT_BOX2,
	IG_ICE_F_STONE_BOX,
	IG_BS_MAKING_S,
	IG_MONTHLY_PACKAGE_1,
	IG_MONTHLY_PACKAGE_2,
	IG_MONTHLY_PACKAGE_3,
	IG_MONTHLY_BUFF_PACKAGE,
	IG_MONTHLY_BATTLE_PACKAGE,
	IG_MD_AIRBOAT_EXPBOX,
	IG_ENCHANT_TICKET_3,
	IG_FAN_GREED_1HOUR_BOX,
	IG_KAKAO_PLUS_BOX,
	IG_COSTUMEMILEPACK_27_1,
	IG_COSTUMEMILEPACK_27_2,
	IG_COSTUMEMILEPACK_27_3,
	IG_P_BOOSTER230_GIFT,
	IG_BOOSTER230_GIFT,
	IG_BOOSTER_PACK_10,
	IG_BOOSTER_PACK_20,
	IG_BOOSTER_PACK_40,
	IG_BOOSTER_PACK_50,
	IG_BOOSTER_PACK_70,
	IG_BOOSTER_PACK_80,
	IG_BOOSTER_PACK_110,
	IG_BOOSTER_PACK_120,
	IG_BOOSTER_PACK_140,
	IG_BOOSTER_PACK_150,
	IG_BOOSTER_PACK_170,
	IG_BOOSTER_PACK_180,
	IG_BOOSTER_PACK_210,
	IG_BOOSTER_PACK_220,
	IG_BOOSTER_PACK_240,
	IG_BOOSTER_PACK_250,
	IG_BOOSTER_CALL_PACKAGE,
	IG_E_BOARDING_HALTER_BOX2,
	IG_SHADOW_UP_BOX,
	IG_VIVA_ADUL_HAT_BOX_11,
	IG_EVT_MAKINGMATERIALS_BOX,
	IG_LI_NYANGVINE_BOX1_28,
	IG_LI_NYANGVINE_BOX2_28,
	IG_LI_NYANGVINE_BOX3_28,
	IG_EVT_20TH_WHITEGOLD,
	IG_EVT_20TH_GOLD,
	IG_EVT_20TH_SILVER,
	IG_EVT_20TH_BRONZE,
	IG_EVT_20TH_RETURN,
	IG_EVT_20TH_RETURN2,
	IG_E_CLOTH_DYE_BOX,
	IG_PLAIN_RUNE_BOX5,
	IG_FLAME_RUNE_BOX5,
	IG_ICE_RUNE_BOX5,
	IG_DEATH_RUNE_BOX5,
	IG_RO_FESTIVAL_BOX,
	IG_SERVICE1_M_01_BOX,
	IG_SERVICE1_M_05_BOX,
	IG_SERVICE1_M_07_BOX,
	IG_SERVICE1_M_10_BOX,
	IG_SERVICE1P_M_01_BOX,
	IG_SERVICE1P_M_05_BOX,
	IG_SERVICE1P_M_07_BOX,
	IG_SERVICE1P_M_10_BOX,
	IG_SERVICE1_F_01_BOX,
	IG_SERVICE1_F_05_BOX,
	IG_SERVICE1_F_07_BOX,
	IG_SERVICE1_F_10_BOX,
	IG_SERVICE1P_F_01_BOX,
	IG_SERVICE1P_F_05_BOX,
	IG_SERVICE1P_F_07_BOX,
	IG_SERVICE1P_F_10_BOX,
	IG_R_BEARERS_EARRING_BOX,
	IG_R_BEARERS_PENDANT_BOX,
	IG_R_BEARERS_ARMOR_BOX,
	IG_R_BEARERS_SHOES_BOX,
	IG_HASTY_WEAPON_BOX,
	IG_HASTY_SHIELD_BOX,
	IG_S_RELOAD_SHIELD_BOX,
	IG_RO_ARENA_BOX,
	IG_RO_ARENA_BOX2,
	IG_HEROSRIA_GIFT,
	IG_MAUTOSPELL_EARRING_BOX,
	IG_MAUTOSPELL_PENDANT_BOX,
	IG_MAUTOSPELL_ARMOR_BOX,
	IG_MAUTOSPELL_SHOES_BOX,
	IG_INFINITY_WEAPON_BOX,
	IG_INFINITY_SHIELD_BOX,
	IG_LUXURIOUS_BLUE_BOX,
	IG_VR_BOOK_EVENT,
	IG_LI_NYANGVINE_BOX1_29,
	IG_LI_NYANGVINE_BOX2_29,
	IG_LI_NYANGVINE_BOX3_29,
	IG_EXP_WEAPON_BOX,
	IG_EXP_SHIELD_BOX,
	IG_M_BLITZ_WEAPON_BOX,
	IG_M_BLITZ_SHIELD_BOX,
	IG_CVT_WING_BOX,
	IG_TEMPLE_RUNE_BOX5,
	IG_VENOM_RUNE_BOX5,
	IG_SOUL_RUNE_BOX5,
	IG_CASH_BOOSTER_BOX,
	IG_A_BUBBLE_GUM_BOX10,
	IG_COSTUMEMILEPACK_29_1,
	IG_COSTUMEMILEPACK_29_2,
	IG_COSTUMEMILEPACK_29_3,
	IG_S_BEARERS_CUBE,
	IG_PENE_SET_CUBE,
	IG_TEMP_SET_CUBE,
	IG_JUSTICE_WEAPON_BOX,
	IG_INJUSTICE_WEAPON_BOX,
	IG_GOODNEVIL_HELM_BOX,
	IG_F_EIN_1HDAGGER_BOX,
	IG_SHADOW_SELECT_BOX_SET,
	IG_REFINE_HAMMER_BOX,
	IG_LI_NYANGVINE_BOX1_30,
	IG_LI_NYANGVINE_BOX2_30,
	IG_LI_NYANGVINE_BOX3_30,
	IG_SLD_BOSS_CARD_ALBUM,
	IG_COSTUMEMILEPACK_30_1,
	IG_COSTUMEMILEPACK_30_2,
	IG_COSTUMEMILEPACK_30_3,
	IG_VIP_GIFT,
	IG_VVIP_GIFT,
	IG_SVIP_GIFT,
	IG_2023_SPRING_COLLECTION,
	IG_KR_B_SPECIAL04,
	IG_LI_NYANGVINE_BOX1_31,
	IG_LI_NYANGVINE_BOX2_31,
	IG_LI_NYANGVINE_BOX3_31,
	IG_STONE_ROBE3_BOX,
	IG_RO_CONCERT_SCROLL,
	IG_RO_CONCERT_SCROLL_BOX,
	IG_FAN_UPGRADE_KIT_EX_10,
	IG_KR_B_SPECIAL06,
	IG_COSTUMEMILEPACK_31_1,
	IG_COSTUMEMILEPACK_31_2,
	IG_COSTUMEMILEPACK_31_3,
	IG_CATPAW_1DAY_BOX,
	IG_MILEAGE_COUPON,
	IG_LI_NYANGVINE_BOX1_32,
	IG_LI_NYANGVINE_BOX2_32,
	IG_LI_NYANGVINE_BOX3_32,
	IG_21TH_PRESENT_BOX,
	IG_21TH_COSTUME_COLLECTION,
	IG_S_ENCHANT_ESSENCE_BOX_3,
	IG_SEASON_EVT_REWARD_8,
	IG_COSTUMEMILEPACK_32_1,
	IG_COSTUMEMILEPACK_32_2,
	IG_COSTUMEMILEPACK_32_3,
	IG_M_ARMOR_BOX,
	IG_M_SHOES_BOX,
	IG_M_PENDANT_BOX,
	IG_M_EARRING_BOX,
	IG_EIN_ORE_BOX,
	IG_FATE_FRAGMENT_BOX,
	IG_SIN_FRAGMENT_BOX,
	IG_AMETHYST_FRAGMENT_BOX,
	IG_SNOW_F_ORE_BOX,
	IG_SCHMIDT_ANTIQUITY,
	IG_SCHMIDT_ANTIQUITY2,
	IG_AMDARAIS_ANTIQUITY,
	IG_AMDARAIS_ANTIQUITY2,
	IG_C_AMDARAIS_ANTIQUITY,
	IG_C_HIMEL_ANTIQUITY,
	IG_UNKNOWN_ANTIQUITY,
	IG_SAKRAY_ANTIQUITY,
	IG_AIRBOAT_ANTIQUITY,
	IG_CELINE_KIMI_ANTIQUITY,
	IG_MIGUEL_ANTIQUITY,
	IG_EL_A17T_ANTIQUITY,
	IG_PITAYA_BOSS_ANTIQUITY,
	IG_SWEETY_ANTIQUITY,
	IG_REDPEPPER_ANTIQUITY,
	IG_REDPEPPER_ANTIQUITY2,
	IG_DEMI_FREYJA_ANTIQUITY,
	IG_JUNCEA_ANTIQUITY,
	IG_AQUILA_ANTIQUITY,
	IG_AQUILA_ANTIQUITY2,
	IG_F_ICESLUG_ANTIQUIY,
	IG_LASGAND_ANTIQUITY,
	IG_LASGAND_ANTIQUITY2,
	IG_THANATOS_ANTIQUITY,
	IG_CINNAMON_PACK1,
	IG_CINNAMON_PACK2,
	IG_CINNAMON_PACK3,
	IG_CINNAMON_PACK4,
	IG_COS_ENCHANTSTONE_BOX1,
	IG_COS_ENCHANTSTONE_BOX2,
	IG_COS_ENCHANTSTONE_BOX3,
	IG_T_GARDEN_EV_1,
	IG_T_GARDEN_EV_2,
	IG_T_GARDEN_EV_3,
	IG_LI_NYANGVINE_BOX1_33,
	IG_LI_NYANGVINE_BOX2_33,
	IG_LI_NYANGVINE_BOX3_33,
	IG_LI_NYANG_CINNA_BOX1_33,
	IG_LI_NYANG_CINNA_BOX2_33,
	IG_LI_NYANG_CINNA_BOX3_33,
	IG_BL_DEPTH_EV_1,
	IG_BL_DEPTH_EV_2,
	IG_KR_B_SPECIAL09,
	IG_LI_A_ELUNIUM_BOX,
	IG_LI_A_ORIDECON_BOX,
	IG_PRESENTBOX_EP17_2,
	IG_PRESENTBOX_EP18,
	IG_REFINE_EVENT_BOX,
	IG_PRESENTBOX_EP19,
	IG_PRESENTBOX_EP20,
	IG_PRESENTBOX_GLASTHEIM,
	IG_BROWN_DIA_BOX,
	IG_COSTUMEMILEPACK_33_1,
	IG_COSTUMEMILEPACK_33_2,
	IG_COSTUMEMILEPACK_33_3,
	IG_2023_XMAX_PACK_1,
	IG_2023_XMAX_PACK_2,
	IG_A_FORCE_BOOSTER_BOX,
	IG_A_FORCE_BOOSTER_10_BOX,
	IG_BROWN_DIA_BOX_3_7,
	IG_2401_EV_LUNCH_BOX,
	IG_BLACK_DIA_3_BOX,
	IG_LI_NYANGVINE_BOX1_34,
	IG_LI_NYANGVINE_BOX2_34,
	IG_LI_NYANGVINE_BOX3_34,
	IG_ENCHANT_STONE_BOX34,
	IG_S_BADGE_PACK,
	IG_SUPER_SONIC_PACK,
	IG_CHAOS_EMERALD_PACK,
	IG_VIP_BIRTHDAY_BOX,
	IG_R_EP17_ALBUM,
	IG_R_EP178_BOSS,
	IG_SONIC_PREMIUM_PACK1,
	IG_SONIC_PREMIUM_PACK2,
	IG_S_BADGE_PACK_,
	IG_SUPER_SONIC_PACK_,
	IG_CHAOS_EMERALD_PACK_,
	IG_C_INSURANCE_PACKAGE,
	IG_C_INSURANCE_PACKAGE50,
	IG_C_GIANT_FLY_WING_BOX100,
	IG_C_SIEGFRIED_BOX5,
	IG_C_SIEGFRIED_BOX20,
	IG_C_CONVEX_MIRROR_BOX30,
	IG_C_BLESSING_10_BOX50,
	IG_C_INC_AGI_10_BOX50,
	IG_C_ASPERSIO_5_BOX50,
	IG_C_BATTLE_MANUAL_BOX,
	IG_C_BATTLE_MANUAL_BOX10,
	IG_C_BUBBLE_GUM_BOX,
	IG_C_BUBBLE_GUM_BOX10,
	IG_C_MEGAPHONE_BOX10,
	IG_C_ENRICHED_ELUNIUM_BOX,
	IG_C_ENRICHED_ELUNIUM_BOX5,
	IG_C_ENRICHED_ORIDECON_BOX,
	IG_C_ENC_ORIDECON_BOX5,
	IG_C_NEURALIZER_BOX,
	IG_C_ABRASIVE_BOX10,
	IG_C_MAX_WEIGHT_UP_BOX,
	IG_C_REGENERATION_BOX10,
	IG_C_S_LIFE_POTION_BOX50,
	IG_C_MED_LIFE_POTION_BOX50,
	IG_C_S_ARMORBOX10,
	IG_C_HOLY_ARMOR_S_BOX30,
	IG_C_NEW_STYLE_BOX,
	IG_C_ALICE_SCROLL_BOX10,
	IG_C_MIMIC_SCROLL_BOX10,
	IG_C_DISGUISE_CROLL_BOX10,
	IG_C_MP_SCROLL_BOX50,
	IG_CCLOTH_DYE_COUPON_BOX,
	IG_CCLOTH_DYE_COUPON2_BOX,
	IG_C_MENTAL_POTION50_BOX,
	IG_C_JOB_MANUAL25_BOX1,
	IG_C_JOB_MANUAL25_BOX10,
	IG_C_SIEGE_SCROLL_BOX1_30,
	IG_C_HD_BRADIUM_BOX5,
	IG_C_HD_BRADIUM_BOX10,
	IG_C_HD_CARNIUM_BOX5,
	IG_C_HD_CARNIUM_BOX10,
	IG_C_HD_ORI_BOX5,
	IG_C_HD_ORI_BOX10,
	IG_C_HD_ELU_BOX5,
	IG_C_HD_ELU_BOX10,
	IG_C_RAPID_LIFE_WATER_BOX2,
	IG_CHANGE_NAME_CARD_BOX,
	IG_C_MYST_WATER_BOX50,
	IG_STATUS_RESET_COUPON_BOX,
	IG_AID_BUFF_BOX,
	IG_INVENTORY_EX_BOX,
	IG_PETTRADETICKET_BOX,
	IG_ADVANCED_TAIMING_ITEM,
	IG_ADVANCED_TAIMING_ITEM2,
	IG_INVENTORY_EX_10BOX,
	IG_COSTUMEMILEPACK_34_1,
	IG_COSTUMEMILEPACK_34_2,
	IG_COSTUMEMILEPACK_34_3,
	IG_AEGIS_102947,
	IG_AEGIS_102948,
	IG_AEGIS_103033,
	IG_AEGIS_103034,
	IG_P_BOOSTER_CALL_PACKAGE,
	IG_P_COMPENSATION_BOX,
	IG_ENCHANT_STONE_BOX35,
	IG_STOVE_CHANNELING_BOX_1,
	IG_STOVE_CHANNELING_BOX_2,
	IG_STOVE_CHANNELING_BOX_3,
	IG_STOVE_CHANNELING_BOX_4,
	IG_LI_NYANGVINE_BOX1_35,
	IG_LI_NYANGVINE_BOX2_35,
	IG_LI_NYANGVINE_BOX3_35,
	IG_A_SPEED_BOOSTER_BOX,
	IG_A_SPEED_BOOSTER_10_BOX,
	IG_L_INFINITY_POWER_PACK,
	IG_L_ALL_RED_PACK,
	IG_L_DEFENSE_POTION_PACK,
	IG_L_SPEED_FORCE_PACK,
	IG_L_SPECIAL_SPEED_PACK,
	IG_L_SPECIAL_FORCE_PACK,
	IG_COSTUMEMILEPACK_35_1,
	IG_COSTUMEMILEPACK_35_2,
	IG_COSTUMEMILEPACK_35_3,
	IG_2024ROS_BOX_1ST,
	IG_2024ROS_BOX_2ND,
	IG_2024ROS_BOX_3RD,
	IG_2024ROS_BOX_4TH,
	IG_2024ROS_BOX_5TH,
	IG_AEGIS_103234,
	IG_2024SPORTS_BOX,
	IG_22TH_PRESENT_BOX,
	IG_AEGIS_103316,
	IG_SVIP_GIFT_22THANIV,
	IG_VVIP_GIFT_22THANIV,
	IG_VIP_GIFT_22THANIV,
	IG_LI_NYANGVINE_BOX1_36,
	IG_LI_NYANGVINE_BOX2_36,
	IG_LI_NYANGVINE_BOX3_36,
	IG_2024_SUMMER_PACK_1,
	IG_2024_SUMMER_PACK_2,
	IG_2024_SUMMER_PACK_3,
	IG_2024_SUMMER_PACK_4,
	IG_LI_A_HD_CARNIUMBOX,
	IG_LI_A_HD_BRADIUMBOX,
	IG_22TH_PACKAGE_1,
	IG_22TH_PACKAGE_2,
	IG_22TH_PACKAGE_3,
	IG_22TH_PACKAGE_4,
	IG_CLB_SS_NYANG_PACK,
	IG_CLB_SS_REFINE1_PACK,
	IG_CLB_SS_REFINE2_PACK,
	IG_CLB_SS_EXP_PACK,
	IG_RT_EP17_DOUBT_A,
	IG_RT_EP17_DOUBT_3,
	IG_RT_EP17_DOUBT_C,
	IG_RT_EP17_AUTO_A,
	IG_RT_EP17_AUTO_C,
	IG_RT_EP17_SECRET_A,
	IG_RT_EP17_SECRET_C,
	IG_RT_EP17_MUTANT_A,
	IG_RT_EP17_MUTANT_C,
	IG_RT_EP17_MIGUEL_A,
	IG_RT_EP17_MIGUEL_C,
	IG_RT_EP17_MIGUEL_2,
	IG_RT_EP17_OVERLOAD_A,
	IG_RT_EP17_OVERLOAD_C,
	IG_RT_EP17_OVERLOAD_3,
	IG_RT_EP17_BATH_A,
	IG_RT_EP17_BATH_C,
	IG_RT_EP17_GARDEN_A,
	IG_RT_EP17_GARDEN_C,
	IG_RT_EP17_GARDEN_3,
	IG_RT_EP17_GARDEN_5,
	IG_RT_EP17_GREEN_A,
	IG_RT_EP17_GREEN_C,
	IG_RT_EP17_GREEN_2,
	IG_RT_EP17_GREEN_4,
	IG_RT_EP17_WING_A,
	IG_RT_EP17_WING_C,
	IG_RT_EP17_WING_2,
	IG_RT_EP17_WING_4,
	IG_RT_EP17_HARMFUL_A,
	IG_RT_EP17_HARMFUL_C,
	IG_RT_EP17_HARMFUL_2,
	IG_RT_EP17_HARMFUL_4,
	IG_RT_EP17_BOSS_A,
	IG_RT_EP17_BOSS_C,
	IG_RT_EP17_BOSS_3,
	IG_RT_EP17_BOSS_5,
	IG_RT_EP17_MALFUN_A,
	IG_RT_EP17_MALFUN_C,
	IG_RT_EP17_MALFUN_3,
	IG_RT_EP18_ARMOR_A,
	IG_RT_EP18_ARMOR_C,
	IG_RT_EP18_MELEE_A,
	IG_RT_EP18_MAGIC_C,
	IG_RT_EP18_MELEE_C,
	IG_RT_EP18_MAGIC_A,
	IG_RT_EP18_RANGE_A,
	IG_RT_EP18_RANGE_C,
	IG_RT_EP18_FIELD_A,
	IG_RT_EP18_FIELD_C,
	IG_RT_EP18_FIELD_3,
	IG_RT_EP18_LAVA_A,
	IG_RT_EP18_LAVA_C,
	IG_RT_EP18_LAVA_2,
	IG_RT_EP18_TOTAL_A,
	IG_RT_EP18_TOTAL_C,
	IG_RT_EP18_TOTAL_3,
	IG_RT_EP18_TOTAL_6,
	IG_RT_EP18_FANG_A,
	IG_RT_EP18_FANG_C,
	IG_RT_EP18_DEMI_A,
	IG_RT_EP18_DEMI_C,
	IG_RT_EP18_DEMI_2,
	IG_YOR_CARD_P_BOX,
	IG_EP21_COSTUME_BOX1,
	IG_EP21_COSTUME_BOX2,
	IG_AEGIS_103537,
	IG_AEGIS_103582,
	IG_AEGIS_103617,
	IG_IFIRIT_PROMOTION_PACK,
	IG_AEGIS_103622,
	IG_AEGIS_103623,
	IG_AEGIS_103624,
	IG_AEGIS_103625,
	IG_AEGIS_103626,
	IG_AEGIS_103627,
	IG_C_CHARSLOT_OPEN_BOX,
	IG_COSTUMEMILEPACK_36_1,
	IG_COSTUMEMILEPACK_36_2,
	IG_COSTUMEMILEPACK_36_3,
	IG_NYANGVINE_SPECIAL_PACK1,
	IG_NYANGVINE_SPECIAL_PACK2,
	IG_NYANGVINE_SPECIAL_PACK3,
	IG_LI_NYANGVINE_BOX1_37,
	IG_LI_NYANGVINE_BOX2_37,
	IG_LI_NYANGVINE_BOX3_37,
	IG_JANUARYGIFTBOX,
	IG_FEBRUARYGIFTBOX,
	IG_MARCHGIFTBOX,
	IG_MAYGIFTBOX,
	IG_JUNEGIFTBOX,
	IG_JULYGIFTBOX,
	IG_AUGUSTGIFTBOX,
	IG_OCTOBERGIFTBOX,
	IG_DECEMBERGIFTBOX,
	IG_2024GOLDPCBOX,
	IG_E_CARD_PACK,
	IG_TRUE_HUNTING_SET,
	IG_REGIA_HUNTING_SET,
	IG_MYSTERIOUS_FRUIT_BOX,
	IG_ZONDA_SUPPORT_PACKAGE,
	IG_AEGIS_103871,
	IG_AEGIS_103872,
	IG_IFRIT_SCROLL,
	IG_IF_COSTUME_SCROLL,
	IG_AEGIS_103891,
	IG_AEGIS_103909,
	IG_AEGIS_103991,
	IG_NEWSERVER_PACKAGE_1,
	IG_NEWSERVER_PACKAGE_2,
	IG_NEWSERVER_PACKAGE_3,
	IG_NEWSERVER_GROWTHPACK1,
	IG_NEWSERVER_GROWTHPACK2,
	IG_NEWSERVER_REFINEPACK1,
	IG_NEWSERVER_REFINEPACK2,
	IG_NEWSERVER_NYANGVINEPACK,
	IG_COSTUMEMILEPACK_37_1,
	IG_COSTUMEMILEPACK_37_2,
	IG_COSTUMEMILEPACK_37_3,
	IG_IF_COSTUME_BOX,
	IG_IF_ALMIGHTY100_BOX,
	IG_IF_ALMIGHTY_BOX,
	IG_IF_REFINE_ORE_BOX_SET,
	IG_IF_REFINE_ORE_BOX,
	IG_IF_HD_REFINE_ORE_BOX,
	IG_IF_HD_ELUNIUM_BOX,
	IG_IF_HD_ORIDECON_BOX,
	IG_IF_INFINITY_10_BOX,
	IG_IF_INFINITY_BOX,
	IG_IF_UNLIMITED_10_BOX,
	IG_IF_UNLIMITED_BOX,
	IG_EYPGT_COSTUME_BOX1,
	IG_EYPGT_COSTUME_BOX2,
	IG_EYPGT_COSTUME_BOX3,
	IG_IF_SPEED_BOOSTER_10_BOX,
	IG_IF_SPEED_BOOSTER_BOX,
	IG_IF_FORCE_BOOSTER_10_BOX,
	IG_IF_FORCE_BOOSTER_BOX,
	IG_IF_3_LIFE_POTION_10PACK,
	IG_IF_3_LIFE_POTION_PACK,
	IG_IF_HD_HIGH_REFINE_BOX,
	IG_IF_HD_CARNIUM_BOX,
	IG_IF_HD_BRADIUM_BOX,
	IG_IF_LIMITPOWERBOOSTER100,
	IG_IF_LIMITPOWERBOOSTER,
	IG_CLB_KP_PACK1,
	IG_CLB_KP_PACK2,
	IG_2025_COSTUME_BOX1,
	IG_2025_COSTUME_BOX2,
	IG_IF_CLB_KP_PACK1,
	IG_IF_CLB_KP_PACK2,
	IG_IF_2025_COSTUME_BOX1,
	IG_IF_2025_COSTUME_BOX2,
	IG_LI_NYANGVINE_BOX1_38,
	IG_LI_NYANGVINE_BOX2_38,
	IG_LI_NYANGVINE_BOX3_38,
	IG_MD_FRAGMENT_BOX_BL,
	IG_MD_FRAGMENT_BOX_YL,
	IG_MD_FRAGMENT_BOX_GR,
	IG_MD_FRAGMENT_BOX_BK,
	IG_CH1_MD_REWARD_1,
	IG_CH1_MD_REWARD_2,
	IG_CH1_MD_REWARD_3,
	IG_CH1_MD_REWARD_4,
	IG_COMP_AID_BUFF_BOX_,
	IG_COSTUMEMILEPACK_38_1,
	IG_COSTUMEMILEPACK_38_2,
	IG_COSTUMEMILEPACK_38_3,
	IG_HANMAC_COLLABO_1,
	IG_HANMAC_COLLABO_2,
	IG_AEGIS_104386,
	IG_RT_EP19_SNOWFLOWER_A,
	IG_RT_EP19_SNOWFLOWER_C,
	IG_RT_EP19_GLACIER_A,
	IG_RT_EP19_GLACIER_C,
	IG_RT_EP19_GLACIER_3,
	IG_RT_EP19_GLACIER_5,
	IG_RT_EP19_ULRALI_A,
	IG_RT_EP19_ULRALI_C,
	IG_RT_EP19_JUNCEA_A,
	IG_RT_EP19_JUNCEA_C,
	IG_RT_EP19_SNOWFIELD_A,
	IG_RT_EP19_SNOWFIELD_C,
	IG_RT_EP19_SNOWFIELD_2,
	IG_RT_EP19_FAMILY_A,
	IG_RT_EP19_FAMILY_C,
	IG_RT_EP19_FAMILY_2,
	IG_RT_EP19_IRRITATION_A,
	IG_RT_EP19_IRRITATION_C,
	IG_RT_EP19_BASEMENT_A,
	IG_RT_EP19_BASEMENT_C,
	IG_RT_EP19_RGAN_A,
	IG_RT_EP19_RGAN_C,
	IG_RT_EP19_RGAN_2,
	IG_RT_EP19_RABRE_A,
	IG_RT_EP19_RABRE_C,
	IG_RT_EP19_RABRE_3,
	IG_RT_EP20_GLACIER_A,
	IG_RT_EP20_GLACIER_C,
	IG_RT_EP20_SANCTUARY_A,
	IG_RT_EP20_SANCTUARY_C,
	IG_RT_EP20_SANCTUARY_2,
	IG_RT_EP20_PREDATOR_A,
	IG_RT_EP20_PREDATOR_C,
	IG_RT_EP20_GUARDIAN_A,
	IG_RT_EP20_GUARDIAN_C,
	IG_RT_EP20_GUARDIAN_3,
	IG_RT_EP20_SANGEL_A,
	IG_RT_EP20_SANGEL_C,
	IG_RT_EP20_SANGEL_2,
	IG_RT_EP20_DAY_A,
	IG_RT_EP20_DAY_C,
	IG_RT_EP20_RETIRE_A,
	IG_RT_EP20_RETIRE_C,
	IG_RT_EP20_RETIRE_2,
	IG_RT_EP20_RETIRE_4,
	IG_RT_EP20_ROOTS_A,
	IG_RT_EP20_ROOTS_C,
	IG_RT_EP20_ROOTS_3,
	IG_RT_EP20_ROOTS_5,
	IG_AEGIS_104501,
	IG_HANMAC_COLLABO_1S,
	IG_HANMAC_COLLABO_2S,
	IG_LI_A_HD_ELUNIUM_BOX2,
	IG_LI_A_HD_ORIDECON_BOX2,
	IG_LI_A_ELUNIUM_BOX2,
	IG_LI_A_ORIDECON_BOX2,
	IG_LI_NYANGVINE_BOX1_39,
	IG_LI_NYANGVINE_BOX2_39,
	IG_LI_NYANGVINE_BOX3_39,
	IG_MYSTERIOUS_EGG,
	IG_OLD_EQUIPMENT_BOX,
	IG_SIEGE_KIT_BOX,
	IG_WEAPON_BOX_SPEAR,
	IG_WEAPON_BOX_MACE,
	IG_WEAPON_BOX_DAGGER,
	IG_WEAPON_BOX_AXE,
	IG_WEAPON_BOX_BOW,
	IG_WEAPON_BOX_SWORD,
	IG_WEAPON_BOX_FIST,
	IG_WEAPON_BOX_BOOK,
	IG_WEAPON_BOX_GUITAR,
	IG_WEAPON_BOX_WHIP,
	IG_WEAPON_BOX_WAND,
	IG_PET_TICKET_BOX,
	IG_BRILLIANT_HAT_BOX,
	IG_CHEST_OF_DEATH,
	IG_SHADOW_CUBE_SAK,

	IG_MAX
};

/// Enum for bound/sell restricted selling
enum e_itemshop_restrictions {
	ISR_NONE = 0x0,
	ISR_BOUND = 0x1,
	ISR_SELLABLE = 0x2,
	ISR_BOUND_SELLABLE = 0x4,
	ISR_BOUND_GUILDLEADER_ONLY = 0x8,
};

/// Enum for item drop effects
enum e_item_drop_effect : uint16 {
	DROPEFFECT_NONE = 0,
	DROPEFFECT_CLIENT,
#if PACKETVER < 20200304
	DROPEFFECT_WHITE_PILLAR,
#endif
	DROPEFFECT_BLUE_PILLAR,
	DROPEFFECT_YELLOW_PILLAR,
	DROPEFFECT_PURPLE_PILLAR,
#if PACKETVER < 20200304
	DROPEFFECT_ORANGE_PILLAR,
#else
	DROPEFFECT_GREEN_PILLAR,
#endif
#if PACKETVER >= 20200304
	DROPEFFECT_RED_PILLAR,
#endif
	DROPEFFECT_MAX,
#if PACKETVER >= 20200304
	// White was removed in 2020-03-04
	DROPEFFECT_WHITE_PILLAR,
	// Orange was replaced by green in 2020-03-04
	DROPEFFECT_ORANGE_PILLAR,
#else
	// Not supported before 2020-03-04
	DROPEFFECT_GREEN_PILLAR,
	DROPEFFECT_RED_PILLAR,
#endif
};

/// Enum for items with delayed consumption
enum e_delay_consume : uint8 {
	DELAYCONSUME_NONE = 0x0,
	DELAYCONSUME_TEMP = 0x1, // Items that are not consumed immediately upon double-click
	DELAYCONSUME_NOCONSUME = 0x2, // Items that are not removed upon double-click
};

/// Enum for different ways to search an item group
enum e_group_algorithm_type : uint8 {
	GROUP_ALGORITHM_USEDB, // Use algorithm defined in the database for the sub group (All, Random or SharedPool).
	GROUP_ALGORITHM_DROP, // Pick one item from the group and use rate as drop rate, on fail, do not return any item.
	GROUP_ALGORITHM_ALL, // All items have an equal chance to be returned. Using getgroupitem will return all items in the group.
	GROUP_ALGORITHM_RANDOM, // Always return an item from the group, rate determines which item is more likely to be returned.
	GROUP_ALGORITHM_SHAREDPOOL, // Rate is the amount of items in the group, return a random item and remove it from the group.
};

/// Item combo struct
struct s_item_combo {
	std::vector<t_itemid> nameid;
	script_code *script;
	uint16 id;

	~s_item_combo() {
		if (this->script) {
			script_free_code(this->script);
			this->script = nullptr;
		}

		this->nameid.clear();
	}
};

class ComboDatabase : public TypesafeYamlDatabase<uint16, s_item_combo> {
private:
	uint16 combo_num;
	uint16 find_combo_id( const std::vector<t_itemid>& items );

public:
	ComboDatabase() : TypesafeYamlDatabase("COMBO_DB", 1) {

	}

	void clear() override{
		TypesafeYamlDatabase::clear();
		this->combo_num = 0;
	}
	const std::string getDefaultLocation() override;
	uint64 parseBodyNode(const ryml::NodeRef& node) override;
	void loadingFinished() override;
};

extern ComboDatabase itemdb_combo;

// Struct for item random option [Secret]
struct s_random_opt_data
{
	uint16 id;
	std::string name;
	script_code *script;

	~s_random_opt_data() {
		if (script)
			script_free_code(script);
	}
};

/// Struct for random option group entry
struct s_random_opt_group_entry {
	uint16 id;
	int16 min_value, max_value;
	int8 param;
	uint16 chance;
};

/// Struct for Random Option Group
struct s_random_opt_group {
	uint16 id;
	std::string name;
	std::map<uint16, std::vector<std::shared_ptr<s_random_opt_group_entry>>> slots;
	uint16 max_random;
	std::vector<std::shared_ptr<s_random_opt_group_entry>> random_options;

public:
	void apply( struct item& item );
};

class RandomOptionDatabase : public TypesafeYamlDatabase<uint16, s_random_opt_data> {
public:
	RandomOptionDatabase() : TypesafeYamlDatabase("RANDOM_OPTION_DB", 1) {

	}

	const std::string getDefaultLocation() override;
	uint64 parseBodyNode(const ryml::NodeRef& node) override;
	void loadingFinished() override;

	// Additional
	bool option_exists(std::string name);
	bool option_get_id(std::string name, uint16 &id);
};

extern RandomOptionDatabase random_option_db;

class RandomOptionGroupDatabase : public TypesafeYamlDatabase<uint16, s_random_opt_group> {
public:
	RandomOptionGroupDatabase() : TypesafeYamlDatabase("RANDOM_OPTION_GROUP", 1) {

	}

	const std::string getDefaultLocation() override;
	uint64 parseBodyNode(const ryml::NodeRef& node) override;

	// Additional
	bool add_option(const ryml::NodeRef& node, std::shared_ptr<s_random_opt_group_entry> &entry);
	bool option_exists(std::string name);
	bool option_get_id(std::string name, uint16 &id);
};

extern RandomOptionGroupDatabase random_option_group;

/// Struct of item group entry
struct s_item_group_entry
{
	t_itemid nameid; /// Item ID
	uint16 rate;
	uint16 adj_rate; /// Rate adjusted by the battle_config.item_group_rate
	uint16 given; /// Amount of times this item has already been given out
	uint16 duration, /// Duration if item as rental item (in minutes)
		amount; /// Amount of item will be obtained
	bool isAnnounced, /// Broadcast if player get this item
		GUID, /// Gives Unique ID for items in each box opened
		isStacked, /// Whether stackable items are given stacked
		isNamed; /// Named the item (if possible)
	uint8 bound; /// Makes the item as bound item (according to bound type)
	std::shared_ptr<s_random_opt_group> randomOptionGroup;
	uint16 refineMinimum;
	uint16 refineMaximum;
	uint16 minimumEnchantgrade;
	uint16 maximumEnchantgrade;
};

/// Struct of random group
struct s_item_group_random
{
	uint32 total_rate;
	uint32 total_given; /// Amount of times an item from this group has been given out
	e_group_algorithm_type algorithm;
	std::unordered_map<uint32, std::shared_ptr<s_item_group_entry>> data; /// index, s_item_group_entry
};

/// Struct of item group that will be used for db
struct s_item_group_db
{
	uint16 id; /// Item Group ID
	std::unordered_map<uint16, std::shared_ptr<s_item_group_random>> random;	/// group ID, s_item_group_random
};

/// Struct of Roulette db
struct s_roulette_db {
	t_itemid *nameid[MAX_ROULETTE_LEVEL]; /// Item ID
	uint16 *qty[MAX_ROULETTE_LEVEL]; /// Amount of Item ID
	int32 *flag[MAX_ROULETTE_LEVEL]; /// Whether the item is for loss or win
	int32 items[MAX_ROULETTE_LEVEL]; /// Number of items in the list for each
};
extern struct s_roulette_db rd;

///Main item data struct
struct item_data
{
	t_itemid nameid;
	std::string name, ename;

	uint32 value_buy;
	uint32 value_sell;
	item_types type;
	uint8 subtype;
	int32 maxchance; //For logs, for external game info, for scripts: Max drop chance of this item (e.g. 0.01% , etc.. if it = 0, then monsters don't drop it, -1 denotes items sold in shops only) [Lupus]
	uint8 sex;
	uint32 equip;
	uint32 weight;
	uint32 atk;
	uint32 def;
	uint16 range;
	uint16 slots;
	uint32 look;
	uint16 elv;
	uint16 weapon_level;
	uint16 armor_level;
	t_itemid view_id;
	uint16 elvmax; ///< Maximum level for this item
#ifdef RENEWAL
	uint32 matk;
#endif

//Lupus: I rearranged order of these fields due to compatibility with ITEMINFO script command
//		some script commands should be revised as well...
	uint64 class_base[3];	//Specifies if the base can wear this item (split in 3 indexes per type: 1-1, 2-1, 2-2)
	uint16 class_upper; //Specifies if the class-type can equip it (See e_item_job)
	struct {
		int32 chance;
		int32 id;
	} mob[MAX_SEARCH]; //Holds the mobs that have the highest drop rate for this item. [Skotlex]
	struct script_code *script;	//Default script for everything.
	struct script_code *equip_script;	//Script executed once when equipping.
	struct script_code *unequip_script;//Script executed once when unequipping.
	struct {
		unsigned available : 1;
		uint32 no_equip;
		unsigned no_refine : 1;	// [celest]
		unsigned delay_consume;	// [Skotlex]
		struct {
			bool drop, trade, trade_partner, sell, cart, storage, guild_storage, mail, auction;
		} trade_restriction;	//Item restrictions mask [Skotlex]
		unsigned autoequip: 1;
		bool buyingstore;
		bool dead_branch; // As dead branch item. Logged at `branchlog` table and cannot be used at 'nobranch' mapflag [Cydh]
		bool group; // As item group container [Cydh]
		unsigned guid : 1; // This item always be attached with GUID and make it as bound item! [Cydh]
		bool broadcast; ///< Will be broadcasted if someone obtain the item [Cydh]
		bool bindOnEquip; ///< Set item as bound when equipped
		e_item_drop_effect dropEffect; ///< Drop Effect Mode
		unsigned gradable : 1;
	} flag;
	struct {// item stacking limitation
		uint16 amount;
		bool inventory, cart, storage, guild_storage;
	} stack;
	struct {
		uint16 override;
		bool sitting;
	} item_usage;
	int16 gm_lv_trade_override;	//GM-level to override trade_restriction
	std::vector<std::shared_ptr<s_item_combo>> combos;
	struct {
		uint32 duration;
		sc_type sc; ///< Use delay group if any instead using player's item_delay data [Cydh]
	} delay;

	~item_data() {
		if (this->script){
			script_free_code(this->script);
			this->script = nullptr;
		}

		if (this->equip_script){
			script_free_code(this->equip_script);
			this->equip_script = nullptr;
		}

		if (this->unequip_script){
			script_free_code(this->unequip_script);
			this->unequip_script = nullptr;
		}

		this->combos.clear();
	}

	bool isStackable();
	int32 inventorySlotNeeded(int32 quantity);
};

class ItemDatabase : public TypesafeCachedYamlDatabase<t_itemid, item_data> {
private:
	std::unordered_map<std::string, std::shared_ptr<item_data>> nameToItemDataMap;
	std::unordered_map<std::string, std::shared_ptr<item_data>> aegisNameToItemDataMap;

	e_sex defaultGender( const ryml::NodeRef& node, std::shared_ptr<item_data> id );

	std::string create_item_link(struct item& item, std::shared_ptr<item_data>& data);

	struct s_pricevalue {
		bool has_buy;
		bool has_sell;
	};

	std::unordered_map<t_itemid, s_pricevalue> hasPriceValue;

public:
	ItemDatabase() : TypesafeCachedYamlDatabase("ITEM_DB", 3, 1) {

	}

	const std::string getDefaultLocation() override;
	uint64 parseBodyNode(const ryml::NodeRef& node) override;
	void loadingFinished() override;
	void clear() override{
		TypesafeCachedYamlDatabase::clear();

		this->nameToItemDataMap.clear();
		this->aegisNameToItemDataMap.clear();
	}

	// Additional
	std::shared_ptr<item_data> searchname( const char* name );
	std::shared_ptr<item_data> search_aegisname( const char *name );
	std::string create_item_link(struct item& item);
	std::string create_item_link( std::shared_ptr<item_data>& data );
	std::string create_item_link_for_mes( std::shared_ptr<item_data>& data, bool use_brackets, const char* name );
	std::string create_item_icon_for_mes( std::shared_ptr<item_data>& data, const char* name );
};

extern ItemDatabase item_db;

class ItemGroupDatabase : public TypesafeCachedYamlDatabase<uint16, s_item_group_db> {
public:
	ItemGroupDatabase() : TypesafeCachedYamlDatabase("ITEM_GROUP_DB", 5, 1) {

	}

	const std::string getDefaultLocation() override;
	uint64 parseBodyNode(const ryml::NodeRef& node) override;
	void loadingFinished() override;

	// Additional
	bool item_exists(uint16 group_id, t_itemid nameid);
	int16 item_exists_pc(map_session_data *sd, uint16 group_id);
	std::shared_ptr<s_item_group_entry> get_random_entry(uint16 group_id, uint8 sub_group, e_group_algorithm_type algorithm = GROUP_ALGORITHM_USEDB);
	uint8 pc_get_itemgroup( uint16 group_id, bool identify, map_session_data& sd );

private:
	std::shared_ptr<s_item_group_entry> get_random_itemsubgroup(std::shared_ptr<s_item_group_random> random, e_group_algorithm_type algorithm = GROUP_ALGORITHM_USEDB);
	void pc_get_itemgroup_sub( map_session_data& sd, bool identify, std::shared_ptr<s_item_group_entry> data );
};

extern ItemGroupDatabase itemdb_group;

struct s_laphine_synthesis_requirement{
	t_itemid item_id;
	uint16 amount;
};

struct s_laphine_synthesis{
	t_itemid item_id;
	uint16 minimumRefine;
	uint16 maximumRefine;
	uint16 requiredRequirements;
	std::unordered_map<t_itemid, std::shared_ptr<s_laphine_synthesis_requirement>> requirements;
	uint16 rewardGroupId;
};

class LaphineSynthesisDatabase : public TypesafeYamlDatabase<t_itemid, s_laphine_synthesis>{
public:
	LaphineSynthesisDatabase() : TypesafeYamlDatabase( "LAPHINE_SYNTHESIS_DB", 1 ){

	}

	const std::string getDefaultLocation();
	uint64 parseBodyNode( const ryml::NodeRef& node );
};

extern LaphineSynthesisDatabase laphine_synthesis_db;

struct s_laphine_upgrade{
	t_itemid item_id;
	std::vector<t_itemid> target_item_ids;
	uint16 minimumRefine;
	uint16 maximumRefine;
	uint16 requiredRandomOptions;
	bool cardsAllowed;
	std::shared_ptr<s_random_opt_group> randomOptionGroup;
	uint16 resultRefine;
	uint16 resultRefineMinimum;
	uint16 resultRefineMaximum;
};

class LaphineUpgradeDatabase : public TypesafeYamlDatabase<t_itemid, s_laphine_upgrade>{
public:
	LaphineUpgradeDatabase() : TypesafeYamlDatabase( "LAPHINE_UPGRADE_DB", 1 ){

	}

	const std::string getDefaultLocation();
	uint64 parseBodyNode( const ryml::NodeRef& node );
};

extern LaphineUpgradeDatabase laphine_upgrade_db;

struct s_item_reform_base{
	t_itemid item_id;
	uint16 minimumRefine;
	uint16 maximumRefine;
	uint16 requiredRandomOptions;
	bool cardsAllowed;
	std::unordered_map<t_itemid, uint16> materials;
	t_itemid resultItemId;
	int16 refineChange;
	std::shared_ptr<s_random_opt_group> randomOptionGroup;
	bool clearSlots;
	bool removeEnchantgrade;
};

struct s_item_reform{
	t_itemid item_id;
	std::unordered_map<t_itemid, std::shared_ptr<s_item_reform_base>> base_items;
};

class ItemReformDatabase : public TypesafeYamlDatabase<t_itemid, s_item_reform>{
public:
	ItemReformDatabase() : TypesafeYamlDatabase( "ITEM_REFORM_DB", 1 ){

	}

	const std::string getDefaultLocation();
	uint64 parseBodyNode( const ryml::NodeRef& node );
};

extern ItemReformDatabase item_reform_db;

struct s_item_enchant_normal_sub{
	t_itemid item_id;
	uint32 chance;
};

struct s_item_enchant_normal{
	uint16 enchantgrade;
	std::unordered_map<t_itemid, std::shared_ptr<s_item_enchant_normal_sub>> enchants;
};

struct s_item_enchant_perfect{
	t_itemid item_id;
	uint32 zeny;
	std::unordered_map<t_itemid, uint16> materials;
};

struct s_item_enchant_upgrade{
	t_itemid enchant_item_id;
	t_itemid upgrade_item_id;
	uint32 zeny;
	std::unordered_map<t_itemid, uint16> materials;
};

struct s_item_enchant_slot{
	uint16 slot;
	struct{
		uint32 zeny;
		std::unordered_map<t_itemid, uint16> materials;
		uint32 chance;
		std::unordered_map<uint16, uint32> enchantgradeChanceIncrease;
		std::unordered_map<uint16, std::shared_ptr<s_item_enchant_normal>> enchants;
	} normal;
	struct{
		std::unordered_map<t_itemid, std::shared_ptr<s_item_enchant_perfect>> enchants;
	} perfect;
	struct{
		std::unordered_map<t_itemid, std::shared_ptr<s_item_enchant_upgrade>> enchants;
	} upgrade;
};

struct s_item_enchant{
	uint64 id;
	std::vector<t_itemid> target_item_ids;
	uint16 minimumRefine;
	uint16 minimumEnchantgrade;
	bool allowRandomOptions;
	struct {
		uint32 zeny;
		std::unordered_map<t_itemid, uint16> materials;
		uint32 chance;
	} reset;
	std::vector<uint16> order;
	std::unordered_map<uint16, std::shared_ptr<s_item_enchant_slot>> slots;
};

class ItemEnchantDatabase : public TypesafeYamlDatabase<uint64, s_item_enchant>{
private:
	bool parseMaterials( const ryml::NodeRef& node, std::unordered_map<t_itemid, uint16>& materials );

public:
	ItemEnchantDatabase() : TypesafeYamlDatabase( "ITEM_ENCHANT_DB", 1 ){

	}

	const std::string getDefaultLocation();
	uint64 parseBodyNode( const ryml::NodeRef& node );
};

extern ItemEnchantDatabase item_enchant_db;

struct s_item_package_item{
	t_itemid item_id;
	uint16 amount;
	uint16 rentalhours;
	uint16 refine;
	std::shared_ptr<s_random_opt_group> randomOptionGroup;
};

struct s_item_package_group{
	uint32 groupIndex;
	std::unordered_map<t_itemid, std::shared_ptr<s_item_package_item>> items;
};

struct s_item_package{
	t_itemid item_id;
	std::unordered_map<uint32, std::shared_ptr<s_item_package_group>> groups;
};

class ItemPackageDatabase : public TypesafeYamlDatabase<t_itemid, s_item_package>{
public:
	ItemPackageDatabase() : TypesafeYamlDatabase( "ITEM_PACKAGE_DB", 1 ){

	}

	const std::string getDefaultLocation();
	uint64 parseBodyNode( const ryml::NodeRef& node );
};

extern ItemPackageDatabase item_package_db;

uint16 itemdb_searchname_array(std::map<t_itemid, std::shared_ptr<item_data>> &data, uint16 size, const char *str);
struct item_data* itemdb_search(t_itemid nameid);

[[deprecated("Please upgrade your code to item_db.exists() or item_db.find()! This function will be dropped soon!")]]
std::shared_ptr<item_data> itemdb_exists(t_itemid nameid);

#define itemdb_name(n) itemdb_search(n)->name.c_str()
#define itemdb_ename(n) itemdb_search(n)->ename.c_str()
#define itemdb_type(n) itemdb_search(n)->type
#define itemdb_subtype(n) itemdb_search(n)->subtype
#define itemdb_atk(n) itemdb_search(n)->atk
#define itemdb_def(n) itemdb_search(n)->def
#define itemdb_look(n) itemdb_search(n)->look
#define itemdb_weight(n) itemdb_search(n)->weight
#define itemdb_equip(n) itemdb_search(n)->equip
#define itemdb_usescript(n) itemdb_search(n)->script
#define itemdb_equipscript(n) itemdb_search(n)->script
#define itemdb_wlv(n) itemdb_search(n)->weapon_level
#define itemdb_range(n) itemdb_search(n)->range
#define itemdb_slots(n) itemdb_search(n)->slots
#define itemdb_available(n) (itemdb_search(n)->flag.available)
#define itemdb_traderight(n) (itemdb_search(n)->flag.trade_restriction)
#define itemdb_viewid(n) (itemdb_search(n)->view_id)
#define itemdb_autoequip(n) (itemdb_search(n)->flag.autoequip)
#define itemdb_dropeffect(n) (itemdb_search(n)->flag.dropEffect)
const char* itemdb_typename(enum item_types type);
const char *itemdb_typename_ammo (e_ammo_type ammo);

#define itemdb_value_buy(n) itemdb_search(n)->value_buy
#define itemdb_value_sell(n) itemdb_search(n)->value_sell
//Item trade restrictions [Skotlex]
bool itemdb_isdropable_sub(struct item_data *itd, int32 gmlv, int32 unused);
bool itemdb_cantrade_sub(struct item_data *itd, int32 gmlv, int32 gmlv2);
bool itemdb_canpartnertrade_sub(struct item_data *itd, int32 gmlv, int32 gmlv2);
bool itemdb_cansell_sub(struct item_data *itd, int32 gmlv, int32 unused);
bool itemdb_cancartstore_sub(struct item_data *itd, int32 gmlv, int32 unused);
bool itemdb_canstore_sub(struct item_data *itd, int32 gmlv, int32 unused);
bool itemdb_canguildstore_sub(struct item_data *itd, int32 gmlv, int32 unused);
bool itemdb_canmail_sub(struct item_data *itd, int32 gmlv, int32 unused);
bool itemdb_canauction_sub(struct item_data *itd, int32 gmlv, int32 unused);
bool itemdb_isrestricted(struct item* item, int32 gmlv, int32 gmlv2, bool (*func)(struct item_data*, int32, int32));
bool itemdb_ishatched_egg(struct item* item);
#define itemdb_isdropable(item, gmlv) itemdb_isrestricted(item, gmlv, 0, itemdb_isdropable_sub)
#define itemdb_cantrade(item, gmlv, gmlv2) itemdb_isrestricted(item, gmlv, gmlv2, itemdb_cantrade_sub)
#define itemdb_canpartnertrade(item, gmlv, gmlv2) itemdb_isrestricted(item, gmlv, gmlv2, itemdb_canpartnertrade_sub)
#define itemdb_cansell(item, gmlv) itemdb_isrestricted(item, gmlv, 0, itemdb_cansell_sub)
#define itemdb_cancartstore(item, gmlv)  itemdb_isrestricted(item, gmlv, 0, itemdb_cancartstore_sub)
#define itemdb_canstore(item, gmlv) itemdb_isrestricted(item, gmlv, 0, itemdb_canstore_sub)
#define itemdb_canguildstore(item, gmlv) itemdb_isrestricted(item , gmlv, 0, itemdb_canguildstore_sub)
#define itemdb_canmail(item, gmlv) itemdb_isrestricted(item , gmlv, 0, itemdb_canmail_sub)
#define itemdb_canauction(item, gmlv) itemdb_isrestricted(item , gmlv, 0, itemdb_canauction_sub)

bool itemdb_isequip2(struct item_data *id);
#define itemdb_isequip(nameid) itemdb_isequip2(itemdb_search(nameid))
char itemdb_isidentified(t_itemid nameid);
bool itemdb_isstackable2(struct item_data *id);
#define itemdb_isstackable(nameid) itemdb_isstackable2(itemdb_search(nameid))
bool itemdb_isNoEquip(struct item_data *id, uint16 m);

bool itemdb_parse_roulette_db(void);

void itemdb_gen_itemmoveinfo();

void itemdb_reload(void);

void do_final_itemdb(void);
void do_init_itemdb(void);

#endif /* ITEMDB_HPP */
